聚合多重性UML

时间:2012-12-18 14:31:18

标签: uml aggregation multiplicity

我和我的同事们不能就某一点达成一致。在UML中,当进行聚合时,菱形边的多重性是1,或者它可以是0 .. *?或者它取决于一个观点?
提前谢谢!

2 个答案:

答案 0 :(得分:2)

首先,您需要具体说明哪个'钻石'是指聚合中的空钻石,而填充的钻石是合成钻石?

如果你的意思是空的钻石,那么Icepack是正确的,你会混淆2个单独的东西。多重性与聚合无关,因此“菱形”聚合指标可以具有您喜欢的任何多重性,因为它们是无关的。

如果你的意思是填充钻石即组成,那么他们的例子有人发布了它并不会真正帮助你,因为它的说法有很多部门,但只有1个大学(多样性),如果所有部门都被删除,那么大学也被删除(组成)。

我正在努力想到一个很好的例子,其中作曲结束不会只有1而且我认为它永远不会是0 .. *因为你可以有一个必须删除可能不存在的东西的类?然而,我可以是1 .. *即多对多,例如考试和考试问题。

多重性可能是1 .. *到1 .. *即考试有一个或多个问题,一个问题可以存在于一个或多个考试中。考试结束时填写的钻石(成分)意味着如果所有问题都被删除,那么所有考试也将被删除

答案 1 :(得分:1)

是的,它可以是0 .. *。有一个很好的例子here:部门有几位教授,每位教授可能同时属于几个部门。