1
1
我认为,要回答这个问题中的疑问,我们应该准确定义以下术语:
如果上述术语定义准确,那么使用组合或聚合毫无疑问。 我的想法 ,如果我想问这个问题,在我对术语的具体定义中:
那么
例如(在某些国家),没有任何在线和最新的失效机制来失效
编辑
(根据@Thomas Kilian的评论):
希望对您有所帮助。 |
2
1
由于驾照不是人/人的一部分,而是与人/人相关的,因此两者之间既没有组合,也没有聚合,只有简单的关联。 Gholamali Irani的回答混淆了驾驶执照必须与一个人相关联的事实(即,责任关联端有一个确切的多重数)和许多组成部分的(或有)特征有不可分割的部分,并错误地得出结论,即关联必须是一个组成部分。 在许多情况下,如果我们想知道一个关联是否是一个组合,那么更安全的做法是将其建模为一个简单的关联。
建模关联的唯一好理由(如
|
3
0
聚合 意味着子级可以独立于父级存在的关系。例如:班级(家长)和学生(孩子)。删除该类,学生仍然存在。 聚合示例 : 重要的是要注意,聚合链接并没有以任何方式声明类A拥有类B,也没有声明二者之间存在父子关系(当父级删除了其所有子级时,其结果将被删除)。事实上,恰恰相反!聚合链接通常用于强调类A实例不是类B实例的独占容器,因为实际上同一个类B实例有另一个容器。
组成示例: 我们应该更具体一些,在除了类A和类B之间的部分关系之外,二者之间还有很强的生命周期依赖关系的情况下使用合成链接,这意味着当删除类A时,也会删除类B
这里有一些额外的信息来阐述构图的概念 作为什么 布奇 如UML用户指南所述,Addison Wesley
(来源:UML用户指南-作者:Grady Booch、James Rumbaugh、Ivar Jacobson、Addison Wesley) 总结一下 - ( Read detailed Article ) 总之,关联是一个非常通用的术语,用于表示在类上使用另一个类提供的功能。如果一个父类对象拥有另一个子类对象,并且没有父类对象,该子类对象就不能有意义地存在,那么我们说它是一个组合。如果可以,则称为聚合。 |
ChumboChappati · UML:组合或依赖 6 年前 |
Har · UML-两个实体之间的多重分解关系 6 年前 |
dnjsdnwja · 地图属性的Uml类图替代 6 年前 |
user1323 · 用例图。结合用例是好的还是坏的做法? 7 年前 |
eshkere111222333 · 聚合vs组成 7 年前 |