Java面向对象-6.多态

穿精又带淫゛_ 提交于 2019-12-11 12:42:35

多态:事物存在的多种形态

Animal a = new Cat();            //父类引用指向子类对象
a.eat();                         //子类必须重写父类eat方法,才能多态调用
/*
多态的三个前提
1.继承(继承抽象类,接口都可以)
2.重写
3.父类引用指向子类对象
*/
/*
多态中的
1.成员变量:编译看左边父类,运行看左边父类(Fu f)
2.成员方法:编译看左边父类,运行看右边子类(动态绑定)
3.静态成员方法:不存在覆盖一说,编译看左边,运行看左边

只有非静态的成员方法,编译看左边,运行看右边。
*/

多态成员变量
在这里插入图片描述
多态成员方法
在这里插入图片描述
多态类型转换
在这里插入图片描述

多态的好处:

  1. 提高了代码的维护性(继承保证)
  2. 提高了代码的扩展性(多态保证)

多态的弊端:不能使用子类的特有功能(父类没有子类的该方法和变量)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!