多态
多态:
基本介绍
一个引用变量可以引用多种实际类型对象的现象称为多态。
一个引用变量可以引用这个类和该类的所有子类对象。
-
父类引用变量引用子类对象
- 规则:沿着继承层次,从下往上,子类对象可以当做父类对象使用。
- 转换时机:赋值,方法调用(参数传递)
-
父类引用变量赋值给子类引用变量(强制转换)
- instanceof: 引用变量 instanceof 类名 => 判断对象(实际运行类型)是否是某一类或该类的子类
- 在强制转换之前一般使用 instanceof 检查转换是否成功
- 注意:null 不是任何类的子类对象。故 null instanceof 任何类 ==> 永远为:false
动态绑定:
-
执行过程中根据引用变量实际引用的对象类型调用相应的方法。
-
优点:无需对现存代码进行修改就可对程序进行扩展。