【发布时间】:2011-06-14 18:42:20
【问题描述】:
你如何在类图中表示一个泛型类或接口?
我真的在寻找两件事:
- 一个是如果我使用笔和纸来建模通用 Java 类。
- 其次,有哪些 uml 工具支持通用类/接口。
谢谢!
【问题讨论】:
你如何在类图中表示一个泛型类或接口?
我真的在寻找两件事:
谢谢!
【问题讨论】:
通常泛型表示为分类器的模板参数。这是 NetBeans UML 插件中的示例:
【讨论】:
UML 模板会有所帮助!
使用 UML 模板定义泛型
http://www.eclipse.org/articles/article.php?file=Article-Defining-Generics-with-UML-Templates/index.html
【讨论】:
一个是如果我用笔和纸来建模泛型 java 类。
AFAIK 在 UML 中没有对此的特定支持,最好的可能是使用像 <<generic>> 这样的构造型。但是在纸上用笔,没有什么比写MYType<T> 更简单的了:-)
其次,有哪些 uml 工具支持通用类/接口。
到目前为止,我看到的所有 UML 工具都支持刻板印象。当然,支持的程度可能会有所不同;但是,因为除了餐巾我几乎不使用任何 UML 工具 :-) 我在这里没有太多比较的基础。
【讨论】:
我真的在寻找两件事:一是如果我用笔和纸来建模通用 Java 类。
克雷格·拉曼 (Craig Larman) 的《应用 UML 和模式 3e》一书中有教师幻灯片,其中包含书中的图形。以下来自图15.5:
其次,有哪些 uml 工具支持泛型类/接口。
我喜欢PlantUML,它将produce以下图片来自
skinparam style strictuml
participant sales as "sales:\nArrayList<Sale>"
对于类图,produces
skinparam style strictuml
hide empty members
class "ArrayList<Sale>" as S
class Store {
Store()
}
Store "1" -> "1" S : " sales "
【讨论】:
在 Netbeans 中使用的对象称为“派生分类器”。这是 Vitalii Fedorenko 的回答中用于 MyGeneric 的对象
【讨论】:
一个是如果我用笔和纸来建模泛型 java 类。
是泛化箭头,基类,如果是抽象的,应该用斜体写。也可以用刻板印象来标记。
其次,有哪些 uml 工具支持泛型类/接口。
使用http://staruml.io/。非常好的工具,您可以在一个地方管理所有项目图。在右上角,有对象/图表树,因此您可以在不同的图表中使用相同的类(其他对象)。
【讨论】: