向上转型:
作用就是限制对特有功能的访问,将子类型隐藏,就不能使用子类的特有方法
向下转型:
作用:
是为了使用子类中的特有方法注意:对于转型,自始至终都是子类对象在做着类型的变化
使用多态的三个条件:
1.继承的存在(继承是多态的基础,没有继承就没有多态)
2.子类重写父类的方法(多态下调用子类重写后的方法)
3.父类引用变量指向子类对象(子类到父类的类型转换)
多态的特点(父类 对象名=new 子类(参数)):
1.成员变量:
编译时:参考引用型变量所属的类中是否有调用的成员变量,有,编译通过,没有,编译失败。
运行时:参考引用型变量所属的类中是否有调用的成员变量,并运行所属类中的成员变量。
简单说:编译和运行都参考等号的左边
2.成员函数:
编译时:参考引用型变量所属的类中是否有调用的成员变量,有,编译通过,没有,编译失败。
运行时:参考的是对象所属的类中是否有调用的函数。
简单说:编译看左边,运行看右边
3.静态函数
编译时:参考引用型变量所属的类中是否有调用的静态方法
运行时:参考引用型变量所属的类中是否有调用的静态方法
简单说:编译和运行都看左边
(其实对于静态方法,是不需要对象的,直接用类名调用)