我是UML建模的新手,所以请耐心等待。
假设我有一个属性students
的类,它是Student
个实例的列表。我已经设置了Student
类的聚合关系,它也在图中。这个关系是替换容器类中的#students : Student[]
等属性条目,还是属性和关系可以共存?
提前感谢您的任何答案!
答案 0 :(得分:7)
简答:属性和关系是否都存在?否...
但如果你的课程是软件课程,你可能有很多选择来展示它们:
但是如果您的课程不是软件类并且您为域建模,则应该更谨慎地将实体显示为属性或类。通常,如果实体是复杂类型,则显示为单独的类。但这不是一个规则:取决于背景。
答案 1 :(得分:0)
属性有助于识别对象的结构。聚合提供高级概述,该对象将包含一个(或多个)另一个类型。既不替换,而是显示对象类型之间的关系。
答案 2 :(得分:0)
您通常没有用户定义(或任何复杂)类的属性。您当然不会在UML中显示同一事物的属性和关联。如果我理解你的情况,你需要一个关联(或聚合/组合)......并且使用多重性来实现它。