多态的概述
多态
-
定义:同一个事物,在不同的时刻表现出来不同的形态
-
注:多态是指同一个实现接口,使用不同的实例而执行不同的操作
-
-
多态的前提和体现
- 有继承/实现关系
- 有方法重写(不是必须的)
- 有父类引用指向子类对象
-
多态中成员变量访问特点
-
- 成员变量:编译看左边,运行也看左边
- 成员方法:编译看左边,运行看右边
-
为什么成员变量和成员方法的访问不一样?
- 因为成员方法重写了父类方法,而成员变量没有.
-
-
多态的三种写法:
- 标准写法:父类类型指向子类对象:父类类型 变量名 = 子类对象
- 引申写法:间接父类类型指向子类对象: 间接父类类型 变量名 = 子类对象
- 接口类型指向实现类对象:接口数据类型 变量名 = 实现类对象
-
多态的好处与弊端
- 好处:提高了程序的扩展性
- 具体表现:定义方法的时候,使用父类类型作为参数,将来在使用的时候,使用具体的子类进行操作
- 弊端:不能使用子类的特有功能
- 好处:提高了程序的扩展性
-
多态的转型
- 向上转型:从子到父,父类引用指向子类对象
Animal a = new Cat();
- 向下转型:从父到子,父类引用转为子类对象:
Cat c = new (Cat)a;
- 向上转型:从子到父,父类引用指向子类对象

浙公网安备 33010602011771号