多态是Java面向对象中三大特性之一
多态的定义:同一件事放在不同的对象上面会有不同的结果
多态的条件
1.继承关系
2.子类要重新父类的方法
3.父类的引用指向子类的对象
多态的转型分为向上转型和向下转型
多态的向上转型
语法格式
父类 父类的引用 = new 子类();
1.向上转型是自动的,将子类的对象赋值给父类的引用
2.小范围(子类)转为大范围(父类)的转换是可以自动转换的
3.父类的引用可以调用父类的所有方法,但不能调用子类多有的方法
4.最终的调用结果看的是子类中重写的方法
多态的向下转型
语法格式
父类 父类的引用 = new 子类()
子类 子类的引用 = (子类)父类的引用
注意,如果想要多态向下转型,首先就需要先向上转型,然后再向下转型
个人理解:
子类调用 向上转型后父类引用(向上转型后的父类强行赋值给子类,然后子类在调用)
多态是Java的三大特性之一,它允许同一件事在不同对象上有不同结果。实现多态需要满足三个条件:继承、子类重写父类方法以及父类引用指向子类对象。多态包括向上转型和向下转型,向上转型是自动的,能调用父类所有方法,但无法调用子类特有的。向下转型需先向上转型再进行,确保安全。
3991

被折叠的 条评论
为什么被折叠?



