在UML Diagram Class中指定集合类型

时间:2014-01-11 15:02:46

标签: class collections uml diagram

我有一个问题,我想用UML类图表示。 我有一个A类,它有自己的名字和B的元素集合(0 .. *)。 然而,B类是抽象的,因此A中元素的集合可以是B1或B2(B的特化)。 我想澄清一个事实,即集合必须完整地呈现给所有B1或B2,这不允许混合不同的元素,但我不知道如何在UML上表示这一点。你的建议肯定有帮助。

+---+
| A |
+---+
  |
  |0..*
+---+    +----+
| B |<---| B1 |
+---+    +----+
  ^
  |
+----+
| B2 |
+----+

2 个答案:

答案 0 :(得分:0)

根据抽象的(或界面)创建两个真实的集合。从A到这个抽象集合的引用。因为它是抽象的,为了实现你必须采取其中一个可实现的。它是抽象类的另一种用法。

enter image description here

我担心,我无法用如此漂亮的老式字母数字图形来管理它。

另外,我认为,最好还是添加解释说明。因为它可能很难理解。

编辑:我想评估你希望在课堂上实现这个概念,而不是if-then-else。这样我们就可以保证集合中没有混合类型。

答案 1 :(得分:0)

UML中的集合是隐式定义的。如果属性或关联结束的多重性设置为多个,则为集合。集合中的元素类型是分配给属性或关联端的类型。集合类型由paraneters定义,是独立的musltiplicity。它由靠近属性(关联结束)的关键字描述。