UML modelling enumeration with attributes(具有属性的UML建模枚举)
本文介绍了具有属性的UML建模枚举的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我希望创建具有Java枚举(枚举)的UML关系图,该关系图具有一个或多个属性,但我对如何执行此操作感到困惑。
例如,枚举可以这样声明:
public enum Enumeration_type {
LITERAL_A("attr1_value", attr2_value, attr3_value),
LITERAL_B("attr1_value", attr2_value, attr3_value);
final String attr1;
final type_1 attr2 = initial_value_1;
final type_2 attr3;
Enumeration_type(String attr1, type_1 attr2, type_2 attr3) {
this.attr1_value = attr1;
this.attr2_value = attr2;
this.attr3_value = attr3;
}
}
没有属性,很简单:
+--------------------+
| <<enumeration> |
| Enumeration_type |
+--------------------+
| LITERAL_A |
| LITERAL_B |
+--------------------+
但是如何用属性优雅地对其建模呢?应该是这样吗?
+-----------------------------------------------------+
| <<enumeration>> |
| Enumeration_type |
+-----------------------------------------------------+
| attr1: String |
| attr2: type_1 = initial_value_1 |
| attr2: type_2 |
+-----------------------------------------------------+
| LITERAL_A("attr1_value", attr2_value, attr3_value) |
| LITERAL_B("attr1_value", attr2_value, attr3_value) |
+-----------------------------------------------------+
我只找到这个示例here,但它使用字符串类属性作为枚举名称。我认为,这应该不同于使用public enum
而不指定枚举名称数据类型。
+-----------------------------------------+
| <<enumeration>> |
| CarType |
+-----------------------------------------+
| +sedan : String = SEDAN |
| +liftback : String = LIFTBACK |
| +stationWagon : String = STATION_WAGON |
+-----------------------------------------+
非常感谢您的回答。
uml
我认为您无法在推荐答案中为每个枚举文字建模属性值。
EA对具有属性的枚举使用以下表示法:
您可以将属性值记录在每个文字的注释中的某个位置,也可以使用Excel文件或类似的工具来管理该数据。
通常只需要在设计时提供初始值,因为它们可能会在运行时更改。因此,如果您不能相信这些值是正确的,那么将它们保留在您的模型中没有多大用处。
这篇关于具有属性的UML建模枚举的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:具有属性的UML建模枚举
基础教程推荐
猜你喜欢
- 由于对所需库 rt.jar 的限制,对类的访问限制? 2022-01-01
- 如何对 HashSet 进行排序? 2022-01-01
- 如何使用 Eclipse 检查调试符号状态? 2022-01-01
- 如何使用 Stream 在集合中拆分奇数和偶数以及两者的总和 2022-01-01
- 如何强制对超级方法进行多态调用? 2022-01-01
- 首次使用 Hadoop,MapReduce Job 不运行 Reduce Phase 2022-01-01
- 在螺旋中写一个字符串 2022-01-01
- Spring Boot Freemarker从2.2.0升级失败 2022-01-01
- 如何在不安装整个 WTP 包的情况下将 Tomcat 8 添加到 Eclipse Kepler 2022-01-01
- Java 中保存最后 N 个元素的大小受限队列 2022-01-01