1.含义:
同一对象,在不同时刻表现出不同形态
2.实现多态的前提:
(1)有继承/实现关系
(2)有方法重写
(3)父类引用指向子类对象/接口引用指向实现类对象
3.多态的成员访问特点
成员变量:编译和执行看父类
成员方法:编译看父类,执行看子类
构造方法:与继承访问构造方法一样,子类通过super去访问父类的无参构造方法
4.使用多态的优缺点:
优点:提高代码的扩展性和灵活性
缺点:不能使用子类的特有功能 为了解决这一缺点可通过类转型避免
5.多态转型
(1)向上转型:把子类类型的数据赋值给父类类型的变量
(2)向下转型:把父类类型的数据赋值给子类类型的变量,但是进行类型强转时会发生类型转换异常(转换的类型和目标数据类型不一致导致的),可通过关键字 instanceof进行判断进行后续操作。