请问老师 为什么要有继承这种概念

请问老师 为什么要有继承这种概念

之前的学习中 我们有过 直接创建“成员对象”来引用其他类的例子 ,我个人觉得这种方法比继承还要灵活一些,那么继承和这个相比,两者各有什么优势?为什么要有继承这个概念

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
chrismorgen 2019-01-17 19:29:15

你好同学,优势有很多,比如一个Person类作为父类,它有吃饭睡觉的方法,woman和man是其子类,如果有继承关系的化,我直接new 一个man类对象就可以调用父类的吃饭睡觉的方法,如果不继承的话,你只能给每个类都写吃饭睡觉的方法,你说这样是不是会增加代码量呢?程序语言的设计肯定是经过不断改良得来的优秀思想哦,建议同学多练习练习老师的案例,等你代码量上来了,就能理解了哦,如果有不明白的地方,可以继续提问呢,祝学习愉快~

好帮手慕阿莹 2019-01-17 18:26:22

1、为什么要有继承:

给你举一个例子:

比如我随便写了一个类Test,如下图所示:

http://img1.sycdn.imooc.com//climg/5c4057460001211303710194.jpg

但是我们用这个对象的时候,却发现,它有很多方法,可是这些方法我们都没写啊,哪里来的呢?

http://img1.sycdn.imooc.com//climg/5c40572e000123d609580369.jpg

这个是因为所有的类都默认继承了Object类。

这就体现了继承的好处。很多方法是共用的,继承它之后,就能使用他的除了构造方法和私有方法外的其他方法。

是不是非常方便?现在同学的代码量还比较小,可能体会不到它的便利性,随着代码量的增大,同学会理解继承的便利。

2、关于同学说的“直接创建“成员对象”来引用其他类的例子”没明白同学的意思,同学可以举例说明一下。如果需要贴代码,注意不要贴到回复里呦,会失去代码的格式。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

  • 提问者 慕粉0938534373 #1
    例如在 java封装案列 2-6中 为了获取学生的专业 ,我们在学生类里面用了private Major(类名) majorName; 然后在构造方法参数列表中加入 Major major,再通过这个对象来调用专业类中的成员属性。
    2019-01-17 18:40:51
  • 提问者 慕粉0938534373 #2
    我的意思大概就是 基类有的方法我们可以用创建基类对象属性 的方法来调用,基类没有的 我们可以自己写,那继承的优势 又在哪里,组合的优势又在哪里?
    2019-01-17 18:42:59
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师