继承
继承的概念:
- 继承是类与类的一种关系,Java中的继承是单继承
- 使用已存在的类的定义作为基础建立新类
- 新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类
类与定义
继承的好处 子类拥有父类的所有属性和方法(private修饰的无效)
实现代码复用
语法规则
class 子类 extends 父类
class Dog extends Animal { ... }
- 子类的构造的过程当中必须调用其父类的构造方法
- 如果子类的构造方法中没有显示调用父类的构造方法,则系统默认调用父类无参的构造方法
- 如果显式地调用构造方法,必须在子类的构造方法第一行
- 如果子类构造方法中既没有显式调用父类的构造方法,而父类又没有无参的构造方法,则编译出错
构造时,子类找父类 -> 再继续找父类 -> 再进行实例操作
继承后的初始化顺序:(下按顺序排列)
父类静态成员 子类静态成员 父类对象构造 子类对象构造
super
代表父类引用
- 访问父类成员方法 super.方法名()
- 访问父类属性 super.属性名
- 访问父类构造方法 super()
this 当前对象 通过this获得当前类中允许访问的属性和方法
super 父类对象 通过super调用父类中允许访问的属性和方法
this和super都不能在静态方法中使用 构造方法调用时,this和super不能同时存在
