A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

                   多态:polymorphic
多态可以理解为事物存在的多种形态

多态的前提:要有继承关系;要有方法重写;要有父类引用指向子类对象。
多态的好处:
  • 提高了代码的维护性(由继承保证,父类修改,子类继承的成员也改变了)
  • 提高了代码的扩展性(由多态保证,方法参数为父类类型,可以接受子类对象)
多态的弊端:
  • 提高了扩展性,但是只能使用父类的引用访问父类中的成员

关键字instanceof:判断前边的对象是否是后边的数据类型

向上转型:父类引用指向子类对象
向下转型:必须现有向上转型才有向下转型
注意:多态自始至终都是子类对象在做着变化。

在多态中成员的特点:
  • 成员变量:编译看左边(父类),左边(父类)
  • 成员方法:编译看左边(父类),运行看右边(子类)(也叫动态绑定,因为子父类中的方法有重写特性,所以运行时会调用子类中的方法)
  • 静态成员:编译看左边(父类),左边(父类)

开发的时候很少在创建对象的时候用父类引用指向子类对象,直接创建子类对象更方便,可以使用子类中的特有属性和方法。
当做方法的参数的时候使用多态最好,应为扩展性强。




6 个回复

倒序浏览
挺详细的,应举例说明就更好了!
回复 使用道具 举报
6666666 学习了,求代码
回复 使用道具 举报
很详细,求代码!
回复 使用道具 举报
嗯嗯,不错.楼主给力!
回复 使用道具 举报
写的很详细,
回复 使用道具 举报
66666666666
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马