从属关系就是继承。继承关系可重用,可扩展。
继承:子类 is a 父类
例子:
package day09; public class TestInheritance { public static void main(String[] args) { Dog d=new Dog(); d.eat(); } } class Animal { public void eat() { System.out.println("Animal eat"); } public void sleep() { } } class Dog extends Animal { public void shout() { } }
运行结果:
Java是单继承,一个类只能有一个直接父类。
思考一下:A的子类是B,B的子类是C。A和B是不是都是C的父类呢?
A是C的间接父类。(只要is a 关系成立,就是继承关系。),只有B是C的直接父类,所以并不违反单继承。
什么叫做违反单继承?
class C extends A,B //error!
单继承的好处:形成了树状的关系(树根,树枝,树叶),树状关系在二维数据结构里是最简单的噶关系。
如果一个子类有多个父类的话,树就成了网状图。图的关系要比树的关系复杂多了。