use*_*438 1 attributes uml relationship enterprise-architect model-associations
假设我有两个具有关联关系的类。
向其中一个类添加属性与添加具有属性的关联类有什么区别?
我知道关联类描述了关联关系,但是我不能使用简单的类属性来代替吗?
协会班有哪些附加值?
关联和属性实际上是同一事物的不同表现。区别更多的是一些深奥的性质。关联在视觉上比属性更显眼。因此,如果该属性具有更局部的重要性,而不是在关联的情况下具有更系统范围的重要性,则您可以使用该属性。
你不应该做的是同时使用两者。使用关联时,您需要为其命名,然后将角色与关联一起使用,并且不要将其重复作为属性。
关联类 (AC) 实际上是类和关联的组合(在 UML 中它继承自两者)。这样,两个类之间的纯粹关系本身就可以具有方法和属性。如果要将两个类与 MN 关系关联起来,则可以使用关联类。Student例如,和之间的 ACExam描述了学生在考试中取得的成绩。因此,您拥有 Class 1-M AC N-1 类关系,而不是将此信息作为任一对立类内的数组属性。
作为旁注(因为您将其标记为 EA):EA 提供了角色的下拉列表,该下拉列表由类的属性提供。你不应该利用它。这是一些遗产和/或对定义的误解。正如所说:它没有错,但也不好。