UML类图中“association”的含义

3

enter image description here

在这张UML类图中,“0…1”与Plane类相邻表示Flight的一个实例与零个或一个Plane实例相关联。但是,Flight类没有类型为Plane的属性成员。

那么在系统中会在哪里看到Flight-->Plan这样的关联?“关联”在UML类图中的确切含义是什么?


4
但是Flight类没有类型为Plane的成员属性。它有一个名为"assignedPlane"的属性。因为关联已经被命名,所以在类内部再次写入属性将是冗余的。这个链接可能会对你有所帮助:http://bellekens.com/2011/08/10/uml-best-practice-attribute-or-association/ - Meiko Rachimow
2个回答

3
我会简单地链接到JimL的答案这里,该答案链接到Geert的博客。简而言之:关联就是属性。它们只是同一事物的不同(更好的)呈现方式。
在您的示例中,两个assign*关联端名称是对立类中的属性。

2
末尾带点的关联,根据UML标准(B3.2章节),可能意味着它们是属性。
通常带箭头或没有箭头的关联,仅表示从一个类到另一个类的导航。这可能意味着,如果类A与B有关联,则:
1. A具有B实例作为属性。 2. A具有实例B作为局部变量。 3. A具有对某个B实例的引用,并使用它(仅具有对某个具有与B相关联关系的C类的引用不足)。 4. A具有返回B实例的方法。 5. 可以使用B实例的集合或数组而不是单个B实例。 6. A具有前面提到的一些可导航的方式到B,但我们没有指定它们是哪些(未指定导航)。
最新版本的2.5标准提供了几种设置显示关联末端箭头和交叉符号规则的方法(11.5.5),但从来不会限制只能是属性。
请阅读标准,而非博客。互联网上关于UML的传说非常非常贫乏。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接