使用继承:A、编写父类:class Engineer{公用的属性和方法}
B、编写子类,继承父类:class SoftEngineer extends Engineer{
子类特有的属性和方法}
【注】一个子类只能继承一个父类(单一继承);
Super 关键字:super 显示指明调用父类的属性和方法。
继承顺序:父类属性-父类构造方法-子类属性-子类构造方法。
【说明】A、当生成子类对象的时候,会先调用父类构造,再执行子类构造。
B、默认情况下,子类会去调用父类空参的构造。可以通过super 关键字指明要调
用哪一个构造。
访问修饰符:
访问修饰符 本类 同包 非同包子类 非同包非子类
private √
默认 √ √
protected √ √ √
public √ √ √ √
方法重写:
A、重写规则:子类重写父类方法。则方法名、参数列表、返回值类型必须是完全
一样。(子类方法与父类方法重名,但参数列表不同,则构成重载,而不是重写。)
B、私有方法不能继承因而也无法重写。
C、顺序问题:用子类调用方法时,会先在子类中进行查找,如果有同名方法,则
调用子类方法,如子类中不包含此方法,则调用父类方法
何时使用继承:继承与真实世界类似:符合is-a关系的设计使用继承;
继承是代码重用的一种方式:将子类都有的属性和行为放到父类中。