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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 没壳的蜗牛   /  2014-5-25 13:49  /  16359 人查看  /  73 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

rekirt 来自手机 中级黑马 2014-6-21 07:17:20
21#
重载就算多态的一个表现,
回复 使用道具 举报
多态有编译时多态 和运行时多态。 第一个是通过方法重载实现;第二个是通过方法覆盖实现(子类覆盖父类方法)。第二种就是动态绑定,使用父类引用指向子类对象,再调用某一父类中的方法时,不同子类会表现出不同结果。
回复 使用道具 举报
风的尾巴 发表于 2014-5-25 13:58
多态==晚绑定。

不要把函数重载理解为多态。

总结的简单易懂,赞一个!
回复 使用道具 举报
学习!~~~~~~~~~
回复 使用道具 举报
一个事物在不同环境下所表现出的不同状态,就叫多态啊,比如:狗属于宠物也属于动物还属于生物
回复 使用道具 举报
简单的说,就是一个对象可以是自己本身的类型,也可以是父类类型,说白了,就这么简单,就是一个对象有两种表现形式,或者说两种状态。但是要使用多态,必须有前提,就是:1 要继承,实现(必须有关系),2 要有覆盖。
回复 使用道具 举报
嗯,是有点费解
回复 使用道具 举报
多态就是一个子类对象以父类的对象还是以子类的对象的身份出现。
回复 使用道具 举报
理解  有点难 啊
回复 使用道具 举报
GYSWL 中级黑马 2014-8-21 19:10:51
30#

2楼解释,漂亮啊 学习了。。。。
回复 使用道具 举报
继承了父类的子类,和实现了接口的实现类,才存在多态。猫是动物中的一种,狗也是动物中的一种,他们都是动物的子类,都具有动物的公有属性和方法,动物可以是猫或狗,但动物没有猫狗的特有属性和方法,也就是说动物类可以引用猫、狗类,但不能用其特有方法
回复 使用道具 举报
1,一定要有继承
2.一定要有重写
3,父类引用指向子类对象
回复 使用道具 举报
通俗的说,同样是人,做同样的事情,有不同的行为方式、步骤。同样的命令,不同的人执行起来有差异。
回复 使用道具 举报
Nerro 初级黑马 2014-12-4 22:19:06
34#
多态是将不同子类的对象赋给父类类型的变量,这样做是为了提高代码的扩展性和可维护性.

想实现多态需要有三个前提:
1:要有继承或者实现关系。
2:要有方法的重写/实现。
3:要有父类引用或者父接口引用指向子类对象。

在以上前提为基础下,多态在使用时有以下特点:
成员变量和成员方法在编译时是以左边即父类为主,
运行时成员变量还是以左边为主.成员方法以右边即子类为主.
因为方法存在重写,而变量没有.


而当父类要调用子类中特有方法时,必须对父类类型变量进行向下转型成子类类型变量才能使用子类特有方法.

回复 使用道具 举报
学习了.....
回复 使用道具 举报
很受益啊
回复 使用道具 举报
风的尾巴 发表于 2014-5-25 13:58
多态==晚绑定。

不要把函数重载理解为多态。

讲的非常到位清晰,赞一个
回复 使用道具 举报
大bao 发表于 2014-5-25 19:15
引用别人的解析,详情见论文。个人觉得这样理解起来比较好:假设有一个“小提琴演奏者”类,有一个“钢琴演 ...

这样形象的解释还是第一次见,非常不错
回复 使用道具 举报
看了各位的讲解之后对多态有了更加清晰的理解了!
回复 使用道具 举报
dimost 来自手机 中级黑马 2014-12-25 23:03:14
40#
讲的很好 很不错 值得学习
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马