多态
- 理解
一个事物的多种形态
- 何为多态性
对象的多态性,父类的引用指向子类的对象
- 多态的使用:虚拟方法调用
有了对象的多态性以后,我们在编译期,只能调用父类中声明的方法,但在运行期,我们实际执行的是子类重写父类的方法
总结:编译看左边;运行看右边
- 多态的使用前提
- 类的继承关系;
- 方法的重写。
- 对象的多态性只适用于方法,不适用于属性
- instanceof关键字的使用
a instanceof A 判断a是否是类A的实例。如果是返回true,如果不是返回false。
使用情景:为了避免在向下转型时,出现ClassCastException异常,我们在向下转型之前,先进行instanceof判断,一旦返回true,就进行向下转型,一旦返回false,就终止向下转型。
如果a instanceof A返回true,则a instanceof B也返回true。其中类B是A的父类