语法
class 子类 extends 父类
方法的重写
如果子类对集成父类的方法不满意,是可以重写父类继承的方法。
调用方法时会优先调用子类的方法。
** 返回值类型、方法名、参数类型及个数都要与父类继承的方法相同。
继承的初始化顺序
- 初始化父类再初始子类
- 先执行初始化对象中属性,再执行构造方法中的初始化(即,如果在构造方法中该变量属性值,则为最终值)
final关键字
使用final关键字做标识,具有“最终的”含义。
final可以修饰类、方法、属性和变量
- 修饰类:则该类不允许被继承
- 修饰方法:则该方法不允许被重写
- 修饰属性:则该类的属性不会进行隐式的初始化【类的初始化属性必须有值 或者 在构造方法中赋值】
- 修饰变量:该变量的值只能赋一次值,即变为常量
super关键字
在对象的内部使用,代表父类对象。
- 访问父类的属性: super.age
- 访问父类的方法: super.eat()
- 子类在继承的时候,会先调用父类的构造方法,相当于隐式的定义super();
- 子类中显式调用父类的构造方法,必须在子类的第一行写super();
- 如果子类构造方法中既没有显示调用父类的构造方法,而父类又没有无参的构造方法(即父类定义了有残的构造方法的情况),则编译出错。
