我目前正在学习 UML 类图。我了解到关联只是表明“这些类之间存在关系”。同时,组合和聚合表明“这些类的关系必须是这样的”,即为关联添加特定的信息。我不知道为什么我们继续使用关联。 使用组合或聚合代替不是更具体吗?如果不是,在什么情况下我们应该使用关联而不是其他两个?
希望有人能为我解释一下。
在很多情况下,您会使用既不是组合也不是聚合的关联。
考虑一个将
Parent-Child
类与其自身相关联的 Person
关联。
Person
不是由他们的孩子(或父母)组成。 父母和孩子独立存在。
Person
不是他们孩子的聚合。 父母并不“拥有”他们的孩子。
Likes
和
Person
之间的多对多
Food
关联。 这既不是组合也不是聚合。