10. Java 的继承与多态
继承
Java 只支持类的单继承,不支持类多继承,但是支持接口的多实现。
多个类中存在相同属性和行为时,将这些内容抽取到单独一个类。定义类时直接通过 extends 关键字指明要继承的父类。
子类对象除了可以访问子类中直接定义的成员外,可直接访问父类的所有非私有成员。
继承的作用
- 继承提高了代码的复用性。
- 继承的出现让类与类之间产生了关系,提供了多态的前提。
- 不要仅为了获取其他类中某个功能而去强行使用继承,类与类之间要有所属 “is a” 的关系。
理解 this 和 super
出现在类的实例方法或构造方法中,this 代表所在函数所属对象的引用。用 this 作前缀可访问当前对象的实例变量或成员方法。
this.实例变量;
能加 this 则尽量加,这样代码更清晰this.成员方法;
本类成员方法的调用,能加 this 则尽量加 thisthis(参数)
用来调用同类其他构造方法。注意 this 语句只能定义在构造函数的第一行,因为初始化要先执行