组合和继承有什么区别?

更新时间:2023-06-19 15:29:23 阅读: 评论:0

组合和继承有什么区别?组合和继承是⾯向对象中两种代码复⽤的⽅式。
1.组合定义
质量保证协议书在新类⾥⾯创建原有类的对象,重复利⽤已有类的功能。(has-a关系)
2.继承定义
可以使⽤现有类的功能,并且在⽆需重复编写原有类的情况下对原有类进⾏功能上的扩展。(is-a关系)
照片的英文3.实例⽐较Vehicle表⽰交通⼯具对象Car表⽰汽车对象
四字idTire表⽰轮胎对象
4.两种⽅式的选择
除⾮两个类之间是“is-a”的关系,否则不要轻易的使⽤继承,不要单纯的为了实现代码的重⽤⽽使⽤继承,因为过多的使⽤继承会破坏代码的可维护性,当⽗类被修改时,会影响到所有继承⾃它的⼦类,从⽽增加程序的维护难度和成本。
不要仅仅为了实现多态⽽使⽤继承,如果类之间没有“is-a”的关系,可以通过实现接⼝与组合的⽅式来达
到相同的⽬的。设计模式中的策略模式可以很好的说明这⼀点,采⽤接⼝与组合的⽅式⽐采⽤继承的⽅式具有更好的可扩展性。
在Java语⾔中,能使⽤组合就尽量不要使⽤继承。/***继承*/class  Vehicle {}class  Car entends Vehicle {}1
2
3
4
5
6
7/***组合*/class  Tire {}class  Car entends Vehicle { private  Tire t = new  Tire ();}
hdd和ssd1
2
3
大鹏一日
甜品店创业计划书4
5
6
军力排名旅行景点7
8

本文发布于:2023-06-19 15:29:23,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1045733.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:继承   对象   原有   维护
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图