请忽略任何其他箭头,但不包括在末尾写有1..1或类似名称的单个简单箭头

我已经参考了许多网站和许多介绍UML 2.0的书籍
我碰到了两个习惯

当两类通过一条没有箭头的单行连接,并且在行尾写有1..1、1 .. *等时,则

假设在加入purchasePlan和User的行的末尾,术语为1 .. *而不是0 .. *

1)根据一种约定,我们根据图和PurchasePlan中User的一个对象在User类中创建PurchasePlan对象的数组

2)根据第二种约定,我们仅在User中创建purchaseplan对象的数组,而不在PurchasePlan中创建用户的对象

那么,哪个公约是使用最广泛的公约还是标准公约?

最佳答案

您正在查看的是bi-directional association。这意味着约定(1)适用于这种关系。如果协会有箭头,则第二种方法适用。

"0..*"的意义在于,用户不能具有参考的购买计划(即,其PurchasePlan数组可以为空)。为了遵守双向关系,仍然需要填充每个PurchasePlan中的相应User字段(不为null);这拒绝了“孤立”购买计划的可能性。

10-08 00:19