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 {}

相关文章