一,多态polymorphism
1.同一个引用类型,使用不同的实例而执行不同的操作
2.实现多态的两种方法(1.)使用父类作为方法形参实现多态(2.)使用父类作为方法返回值实现多态
3.多态之间类型转化(1.)向上转型-子类转换为父类,自动进行类型转换(2.)向下转型-父类转换为子类,结合instanceof运算符进行强制转换
4.必要条件要有继承,要有方法重写,父类引用指向子类对象
二,引用数据类型的类型转换
1.子类转换为父类为自动转换
(1.)上转型对象不能操作子类新增的成员变量和方法
(2.)上转型对象可以操作子类的继承或重写的成员变量和方法
(3.)如果子类重写了父类的某个方法,上转型对象调用该方法,是调用的重写方法
2.父类转换为子类为强制转换
绝不是做手术,而是父类的真面目就是一个子类,否则会出现类型转换错误
三,instanceof运算符
1.对象instanceof 类或接口
2.instanceof通常和强制类型转换结合使用