多态的概念
多态的概念:通俗来说,就是多种形态,
具体点就是去完成某个行为,当不同的对象去完成时会产生出不同的状态,多态是一种思想。
多态:当父类引用 引用的对象不一样的时候 表现出的行为是不一样的
多态的基础
1.向上转型在继承体系下 2.重写 3. 通过父类引用 调用这个父类和子类重写的方法
关于重写需要注意的问题:
1:private修饰的方法不能重写
2:static修饰的方法 是不能重写的
3:子类的访问修饰限定权限 要大于父类的权限
private < 默认权限 < protecteed < public
4:被final修饰的方法 是不能被重写的 此时这个方法叫做密封方法
要避免在构造方法中调用重写的方法 因为如果这个方法被子类重写, 就会触 发动态绑定, 但是此时子类对象还没构造完成
动态绑定
:也称为后期绑定
(
晚绑定
)
,即在编译时,不能确定方法的行为,需要等到程序运行时,才能够确定具体调用那个类的方法。
重写与重载的区别:
在这个代码中 Animal animal = new Dog(); 运用了向上转型
向上转型的优点是:让代码实现更加简单灵活
向上转型的缺点是:不能调用到子类特有的方法