是否有可能在UML中表达某个类的所有可能实例之间的排序关系?

时间:2016-02-10 04:52:32

标签: uml

假设课程ComplexNumber的属性为real:Realimag:Real

是否有可能在UML中表达对于类ComplexNumber的所有实例存在总排序关系,其中对于每个a:ComplexNumber,b:ComplexNumbera≤b< - > (a.real ^ 2 + a.img ^ 2)≤(b.real ^ 2 + b.img ^ 2)?

1 个答案:

答案 0 :(得分:0)

在深入了解OCL规范后,我找到了自己问题的答案。

需要定义以下操作

ComplexNumber::<(in a:ComplexNumber):Boolean

具有以下OCL约束

context ComplexNumber::<(in a:ComplexNumber):Boolean
   body: self.real * self.real + self.img * self.img < a.real * a.real + a.img * a.img