多态:
同一个父类的引用变量可以接收任何子类的实例对象,如果用父类类型的引用变量引用的是某个子类的实例对象,在运行时会运行到子类中的功能。(意思就是父类类型的引用变量指向子类对象时,不同子类对象不仅有父类的功能,还有自己的特定功能)
方式:
1. 覆盖的多态:父类与子类之间
2. 重载的多态:同一个类里
好处:
应用程序不必为每个子类书写功能调用,只需通过抽象父类处理即可,大大提高了程序系统的可重用性。
通过对父类方法的功能调用实现对子类功能的调用,大大提高了程序系统的可扩展性。
虚方法调用:声明为父类类型的引用变量,如果指向的是某个子类的实例对象,而该子类又对父类的方法进行了覆盖时,通过父类的引用变量调用父类的方法时,实际运行的是子类中覆盖后的方法。
引用数据类型的相互转换:
。前提:继承关系的类之间
。方式:
。1. 自动转换:将子类类型的对象转换为父类类型的。
。2. 强制转换:将父类类型的对象转换为子类类型的。
。前提是内存中要存在要转换成的那个子类的实例对象
。Instanceof 运算符
。使用方式:对象 instanceof 类/接口:判断内存中的对象是否是某个类或者接口类型的