黑马程序员技术交流社区
标题:
到底什么是多态啊
[打印本页]
作者:
1147664049
时间:
2016-10-26 23:38
标题:
到底什么是多态啊
感觉多态的类不用父类引用指向子类对象啊,直接创建子类对象不就行了,何必多此一举?
作者:
Quasimodo2
时间:
2016-10-26 23:40
不错不错
作者:
LXD2016
时间:
2016-10-26 23:48
小伙子很有想法啊
作者:
shy4458
时间:
2016-10-27 00:18
多态是什么前提?是什么需求引出的多态?
作者:
mafu1993
时间:
2016-10-27 00:42
多态出现使代码扩展性得到更大提升,以后你会理解,你现在多看看你们学的猫狗案例
作者:
character3
时间:
2016-10-27 00:55
我的理解是:
比如定义了一个接口,里面有一个抽象方法是"跑"这个动作,再定义人实现这个接口,当然"人"还有他的其他特有属性行为,又定义了男人和女人接口,他们都有自己特有的属性和行为,再往下还有学生/工人/等等等等,如果这时候我的需求是所有会"跑"的人全都跑起来,不用父类引用指向子类对象把所有实现了跑的类全都调用的话,难道你一个个new子类对象?
实际开发中用子类继承父类很少,一般都是定义接口,让子类去多实现,java不支持多继承,没做过开发不了解具体开发什么样,不过经常能听到说接口不多态八成是写错了{:8_529:}
作者:
leojr
时间:
2016-10-27 14:11
多态传参用的比较多,如果函数需要传对象参数,对象有好多子类,当然用父类型当形参,子类都可以传进来嘛
作者:
jiaogege520
时间:
2016-10-27 15:17
学习了!!!
作者:
efkllx
时间:
2016-10-27 18:31
无论狗还是猫,还是猪都继承与动物,在使用时你都可以用动物类来接收这些,因为他们都是动物,这就是多态
作者:
张乐
时间:
2016-10-27 19:51
回答了那么多,我觉得还是没有给楼主一个可靠回答.是的,楼主你说的没错,直接new子类就可以了啊,但是我用动物new了一个猫,猫是不是可以有动物的行为呢?也就是说多态以后,子类有自己的方法,还可以直接调用父类的方法.
作者:
leimu
时间:
2016-10-28 16:37
多态的前提
继承
父类引用指向子类对象
方法重写
作者:
蔡永汪
时间:
2016-10-28 22:02
事物在不同时刻具备不同的形态...
作者:
18600071691
时间:
2016-10-28 22:45
用的多了的 可以把 父类写到 一个方法李里 调用他们共有的属性和方法 方便
作者:
黑马初学者
时间:
2016-10-28 23:04
可以可以,加油
作者:
zhangyuren
时间:
2016-10-28 23:05
你直接创建一个子类对象的思路是对的.
以为多态就是创建的子类对象.
之所以有高级的多态概念.
让父类引用能够使用子类对象.
是为了在传递参数的时候,接收方便.
不然我的一个方法,如果是参数是父类的话,各种子类都可以当参数传进来.
如果不用多态,我们就需要为了每个子类不同的重载方法.将参数更换成新的子类.
在以后的开发中,谁让你随意改源码.
不可以.
所以最好是方法传参是父类,这样你就算改动子类的内容,也不会影响调用者.更不会重载一个方法,太麻烦了.
代码空间完全是在浪费.
作者:
zhangyuren
时间:
2016-10-28 23:06
你现在有疑惑,只是因为你才刚开始,后面的知识你还没学到,还不知道多态的价值有多好.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2