UML 中关系类型的属性
关系可以具有属性,这些属性显示在 UML 关联类中。关联类显示在一个矩形中,并且包含该关系的公共属性清单。关联类利用虚线与关系连接。不需要原型来解释类用法和为该类分类,因为附件已经对它做了定义。
关联类中的属性是用可见性、名称和类型指定的。
尽管看上去关联类、附件和关系是独立元素,但是它们实际上代表了同样的元素。关系和关联类的名称必须相关。
图 14 关联类中指定了关系类型 Services 的属性
UML 中的简单约束条件
基数
UML 定义了一种一致的方法来指定基数。它总是被关系双方上的数字指定。可能的定义包括用于一定数量(也可能是不限量的)实例的指定基数的单个数字,以及一对规定了基数的范围的以".."隔开的数字。用于无限基数的符号是"*",它可以单独使用标识可选的无限关系,也可以与另一个很低的值结合使用,来指定强制关系(如"1..*")。基数的下限和上限值可以是任意正数或者"*",但是第一个数字必须小于或等于第二个数字。
图 15 实体类型 SoccerTeam 定义了与 11 到 18 个球员的实体类型 Player 的 plays 关系