UML类图枚举

时间:2009-01-05 12:18:34

标签: class enums uml diagram

我正在为类图建模。类的属性是枚举。我该如何建模?通常你会做这样的事情:

- name : string

但是如何用枚举来做这个呢?

3 个答案:

答案 0 :(得分:168)

他们只是这样表现出来:

_______________________
|   <<enumeration>>   |
|    DaysOfTheWeek    |
|_____________________|
| Sunday              |
| Monday              |
| Tuesday             |
| ...                 |
|_____________________|

然后在那和你的班级之间建立关联。

答案 1 :(得分:61)

如果您的UML建模工具支持指定枚举,您应该使用它。它可能会更容易做,它会给你的模型更强的语义。在视觉上,结果将与具有<<enumeration>> Stereotype的类非常相似,但在UML元模型中,Enumeration实际上是一个单独的(元)类型。

+---------------------+
|   <<enumeration>>   |
|    DayOfTheWeek     |
|_____________________|
| Sunday              |
| Monday              |
| Tuesday             |
| ...                 |
+---------------------+

一旦定义,就可以将它用作属性的类型,就像使用数据类型或您自己的类的名称一样。

+---------------------+
|        Event        |
|_____________________|
| day : DayOfTheWeek  |
| ...                 |
+---------------------+

如果你正在使用ArgoEclipse或ArgoUML,工具栏上有一个下拉菜单,可以在数据类型,枚举,信号等中进行选择,以便您创建自己的枚举。然后,通常包含属性的隔离专区可以使用EnumerationLiterals填充枚举值。

以下是ArgoUML中略有不同的示例: enter image description here

答案 2 :(得分:1)

通常,您将枚举本身建模为具有enum构造型

的类