继承是java中类与类之间的一种关系 使用继承的好处:可以用父类封装所有子类的公共代码,让子类继承,实现代码复用
发生继承的类称为子类/派生类,被继承的类称为父类/基类 一个类只能有一个直接父类,一个父类可以有多个子类 如果一个类没有显示的继承父类,则隐式继承Object类 Java不支持多继承,只支持单继承,但支持多级继承,在继承体系的顶层是Object类!
Object类称为祖先类/上帝类,没有super()隐式指令 子类可以继承父类的非私有(非private修饰)成员和成员方法 构造方法不存在继承,但可以被子类调用,且子类的无参构造方法会默认调用父类的无参构造方法 构造方法的第一行处有一条隐式的指令:super()(作用是通过类的签名找父类,调用其父类的构造方法) 类的签名:public class Dog{} this和super的区别: this是指向当前对象,super指向当前父类对象 使用语法: 1.调用构造方法(只能在构造方法中调用,而且必须出现在第一行) this();可以使用this()调用本类构造方法 Super();可以使用super()调用父类构造方法 2. 访问成员 this.成员变量 super.成员变量 this.成员方法 super.成员方法
能发生继承关系的类在逻辑上应该具有一种“is a”的关系 比如:狗 is a 动物,猪 is a 动物…… 枪is a 武器,刀 is a 武器……



