【问题标题】:Difference of UML Aggregation with and without arrow head带箭头和不带箭头的 UML 聚合的区别
【发布时间】:2018-08-26 20:23:54
【问题描述】:

注意:这不是uml-aggregation-with-and-without-arrow-head的复制品,而是它的改进版!

uml-aggregation-with-and-without-arrow-head 中,聚合被解释为黑色填充钻石。这显然是错误,因为 FILLED 钻石是一种组合物。到目前为止我还没有看到带有箭头的组合,所以我的问题是在 aggregation

的上下文中

我提出问题的动机来自 Gof23。那本书中的类图包含带有箭头的聚合。所以我对此很困惑,因为我通常只使用没有箭头的聚合

问题:带箭头的聚合<>----->不带箭头的聚合<>-----有什么区别? p>

【问题讨论】:

  • 这仍然是重复的。提供给另一个问题的答案对于这个问题仍然有效,因为它清楚地表明“任何关联”。如果您有共享或复合聚合并不重要。同样在规范的新版本中,术语shared aggregationcomposite aggregation 优于旧术语aggregationcomposition。因此,对聚合的引用涵盖了这两种情况,聚合通常用菱形表示,而空心或填充仅表示聚合是共享的或复合的。

标签: uml aggregation class-diagram


【解决方案1】:

你的问题的答案和我的问题的答案一样

composition有箭头<>----->composition没有箭头<>-----有什么区别?

请参阅https://stackoverflow.com/a/21767999/2795909,但您必须将实心菱形(用于成分)替换为空心菱形(用于聚合)。

由于您询问导航箭头的使用,答案并不取决于关联的类型(普通、聚合、复合)。所以,你也可以完全放下钻石问

带箭头----->关联和不带箭头-----关联有什么区别?

仍然得到相同的答案。

【讨论】:

  • 非常感谢您的提醒 :) 这个答案确实解释了我的困惑
猜你喜欢
  • 2014-03-11
  • 1970-01-01
  • 2013-10-19
  • 1970-01-01
  • 2014-04-13
  • 2019-12-03
  • 2013-04-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多