Java 中的关联、组合和聚合\
java programming java8object oriented programming更新于 2024/10/23 2:20:00
关联
关联是指多个对象之间的关系。它指的是对象如何相互关联以及它们如何使用彼此的功能。组合和聚合是两种类型的关联。
组合
组合是强类型的关联。如果一个对象拥有另一个对象,并且另一个对象没有所有者对象就无法存在,则该关联被称为组合。考虑人类有心脏的情况。这里人类对象包含心脏,如果没有人类,心脏就无法存在。
聚合
聚合是一种弱关联。如果两个对象都可以独立存在,则关联被称为聚合。例如,一个团队对象和一个玩家对象。团队包含多名玩家,但玩家可以不属于团队。
组合示例
//汽车必须有引擎 public class Car { //引擎是汽车的必需部分 private final Engine engine; public Car () { engine = new Engine(); } } //引擎对象 class Engine {}
聚合示例
//团队 public class Team { //玩家可以是 0 个或更多 private List players; public Car () { players = new ArrayList(); } } //Player 对象 class Player {}