后台-插件-广告管理-内容页广告位一(手机)

您现在的位置是:首页 > 开发类 > 问答问答

想问下聚合的3种形式之间的区别

2021-07-06 20:38:02问答人已围观

简介 一直以来多聚合的定义都拿捏不准(聚合的定义好像就是把一类功能全部都放在一起,我就知道这肤浅的定义=。=)
想请那位能解释下
最好能详细点
书上聚合的3种关系分

一直以来多聚合的定义都拿捏不准(聚合的定义好像就是把一类功能全部都放在一起,我就知道这肤浅的定义=。=)

想请那位能解释下

最好能详细点

书上聚合的3种关系分别为

无聚合--用线表示

共享--用线加空心菱形箭头表示

复合--用线加实心菱形箭头表示

ps:最好能给出每种的定义并用实例解释

最佳答案:

1. 其实你所说的无聚合,应该是关联吧,无聚合这个词我是第一次听说。这种表示就是一个简单的引用,如class A中引用了class B、C、D的实例。

 2.聚合,表示的是整体部分的关系,如class A中包含了几个部分:B、C、D,它们之间的关系比较弱,也就是说A对象不存在了,但是B、C、D对象仍然可以存在。

3.复合,也叫做组合,是一种特殊的聚合,更多表示的是一种“拥有”的关系,如class A中包含了几个部分:B、C、D,它们之间的关系比较强,如果A对象不存在了,则B、C、D对象也会不存在;如果拷贝了A对象,则B、C、D对象也会跟着一起拷贝。

举个例子:计算机外接打印机,它们之间就是就是聚合的关系,计算机不存在了,打印机还可以继续使用;

或者屋子Room中有桌子Desk、椅子Chair等,Room对象消失了,但是Desk、Chair等还可以继续使用,所以它们之间还是聚合关系;

但是有一辆车Car,它包含了引擎Engine、油箱OilBox等,如果Car不存在了,Engine和OilBox也会随着不存在,这种关系就是组合了。

文章来源:https://q.cnblogs.com/q/2721/

Tags:软件工程 设计模式 

很赞哦! ()

上一篇:页面点击添加按钮

下一篇:返回列表

后台-插件-广告管理-内容页广告位二(手机)

相关文章

后台-插件-广告管理-内容页广告位三(手机)
后台-插件-广告管理-内容页广告位四(手机)

文章评论

留言与评论(共有 0 条评论)
   
验证码:

本栏推荐

站点信息

  • 文章统计90281篇文章
  • 浏览统计10087次浏览
  • 评论统计1个评论
  • 标签管理标签云
  • 统计数据:统计代码
  • 微信公众号:扫描二维码,关注我们