UML 2.x:isLeaf vs isReadOnly

时间:2013-08-12 09:01:26

标签: java uml constants modeling

isLeafisReadOnly之间的区别是什么?

根据https://stackoverflow.com/a/16253663/2656889https://stackoverflow.com/a/18095538/2656889isLeft表示无法重新定义元素,isReadOnly表示只能读取该元素。

我正在使用Java。如果我想建模一个final属性这两个不一样吗?建模private static final int PI = 3.14会产生一个(假设带下划线):

- PI : int = 3.14 {readOnly}
- PI : int = 3.14 {leaf}

在第一种情况下,PI无法写入,因此被视为最终。 在第二种情况下,PI是一个叶子,不能重新定义,所以它也是最终的?

1 个答案:

答案 0 :(得分:4)

isLeaf表示您无法通过继承重新定义元素isReadOnly表示您无法更改该值。因此isLeaf是对设计的约束,而isReadOnly是运行时约束。我认为Java中没有真正的直接等价于isLeaf属性。但是在课程isLeaf上相当于final