继承和多态
继承
- 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。
- java中每个类只允许有一个父类。语法如下:class <子类> extends <父类>
- Object类是所有类的直接父类或间接父类。
- 根据访问权限修饰符的不同,子类可以继承父类中某些成员变量和方法,提高了代码的重用性,子类也可以添加新的成员变量方法。
父类对子类构造方法的影响
父类成员变量被覆盖
重写
关键字final
final关键字可以用来修饰类,方法和变量:
- final修饰的类不能被继承
- final修饰的方法不能被重写
- final修饰的变量是常量,不允许二次赋值
关键字super
- super关键字可以调用父类的成员变量(super.属性)和方法
(super.父类方法([参数列表]))
- 子类构造方法中可以使用super关键字调用父类的构造方法:
super([参数列表])
- super不能用于静态方法或静态代码块中
多态
- 多态是同一个行为具有多个不同表现形式或形态的能力。
- 多态就是同一个接口,使用不同的实例而执行不同操作。
上转型对象
输出为:mammal的地址字符串。