一句话教你分清楚UML组合聚合和联系!
2024-10-21 03:02:06
组合:组合后的实体消失,则所有构成实体的部件都无意义,可以理解为不能独立存在
定义: 与聚合相比,组合描述的是这样的关联关系,部分离开整体后就没有实际意义了.所以我们说组合是一种很强的关联关系.
例子:
一个公司有人事部,行政部,董事会,然而这些部门都是构成公司,且都是相对于公司而言的,如果公司倒闭了,那么人事部,行政部,董事会都不会存在了。他们总不可能是独立的行政部?为谁行政,别的公司用不着,哈哈!
没有独立存在的意义这叫组合。
聚合:本就是独立的个体,通过聚合产生了新的实体,但实体消失构成实体的还是独立个体,可以独立存在
定义:聚合描述的是这样一种association,在这个association里,一个类是属于一collection.也就是说聚合说的是一种部分与整体的关系,而当部分离开整体时,两者都还有原来的实际意义.聚合是一种很弱的关联关系.
例子:
一辆车由4个轮子,一个车架,一个发动机,大量内饰组成。
他们没组成车那么轮子还是轮子,车驾子还是车驾子,发动机还是发动机,内饰还是内饰。
能够独立存在且有意义,这叫做聚合
联系:不属于以上的关系,且在类的定义中相关
例子:
小王给小美打电话表白,表白失败了,没有组合成一个家庭,但是有打电话的这一过程,这就是联系。
懂了吗?
懂了点个赞,没懂评论里打出你的问题!
最新文章
- Spark机器学习· 实时机器学习
- log4j设置日志格式为UTF-8
- DevExpress XtraGrid 数据导出导入Excel
- Redis命令小细节
- 从零开始学习jQuery (六) AJAX快餐
- Ubuntu启动错误Checking Battery State的处理
- Delphi Webservice 杂谈
- 代码静态分析工具PC-LINT安装配置
- 第十六章——处理锁、阻塞和死锁(3)——使用SQLServer Profiler侦测死锁
- 3404: [Usaco2009 Open]Cow Digit Game又见数字游戏
- 201521123005《java程序设计》第四周学习总结
- cat/tac/more/less 命令详解
- Tomcat默认工具manager管理页面访问配置
- 初识jvm堆,栈参数
- Metasploit services
- python 常见脚本
- RAC配置(启停库)
- if else和switch的效率
- 开源前夕先给大家欣赏一下我用C语言开发的云贴吧 网站自动兼容-移动、手机、PC自动兼容云贴吧
- 【腾讯敏捷转型No.2】帅哥,来多少敏捷?