在保护条件下使用对象的 UML 决策节点语法
UML decision node syntax for using objects in guard condition
给定一个对象 array
,某个任意 class Array
的实例,为此目的具有属性 length
.
我如何建模 UML activity 图,在某些时候,在控制流语句中使用 array.length
,即在决策节点的守卫中。
array = getArray();
if (array.length > 5)
save();
else
waitForData();
我知道使用的决策节点的守卫是[array.length > 5]
和[array.length <= 5]
。但我不确定如何将其与 activity 图中的对象流集成。
UML 没有指定应该如何描述守卫。它只要求它是一个逻辑表达式,即计算结果为真或假的表达式。
您可以使用自然语言、任何编程语言或 OCL。
您使用的声明是绝对有效的。
此外,您可以将对象的状态放在对象节点上,例如[长度 > 5]
给定一个对象 array
,某个任意 class Array
的实例,为此目的具有属性 length
.
我如何建模 UML activity 图,在某些时候,在控制流语句中使用 array.length
,即在决策节点的守卫中。
array = getArray();
if (array.length > 5)
save();
else
waitForData();
我知道使用的决策节点的守卫是[array.length > 5]
和[array.length <= 5]
。但我不确定如何将其与 activity 图中的对象流集成。
UML 没有指定应该如何描述守卫。它只要求它是一个逻辑表达式,即计算结果为真或假的表达式。 您可以使用自然语言、任何编程语言或 OCL。 您使用的声明是绝对有效的。 此外,您可以将对象的状态放在对象节点上,例如[长度 > 5]