5 uml class-diagram associations aggregation
这里我有这个类图:
以下是我不明白的事情:
Order
-OrderDetail
聚合?它不应该只是一个关联吗,因为它会有一个List<OrderDetail>
类似的:public Order{
public DateTime date;
public Status status;
public List<OrderDetail> orderDetails;
}
Run Code Online (Sandbox Code Playgroud)
OrderDetail
-Item
依赖?既然它引用了该类,那么它不应该是关联吗Item
?shared aggregation
没有定义语义的。参见第 17 页。UML 2.5 的 110 条:指示该属性具有共享聚合语义。共享聚合的精确语义因应用程序领域和建模者而异。
所以你最好询问图表作者他的意图。
OrderDetail
可以看到Item
,但反之则不能。仅在一侧使用角色名称可以更好地表达这一事实。例如,只放置item
在右侧,左侧不放置任何东西。我们能学到什么?UML 是关于沟通的!