组合Composition 表示的是’Part-od’的关系
部分与整体是与生俱来的,部分的存在依赖于整体。比如人与人的某个器官,人一出生,器官就在,人死亡,器官也就没了意义。
聚合Aggregation表示的是’Has-a’的关系
你与你的电脑(或者其它物品),电脑是属于你的吧,但是你是一出生就拥有了电脑吗,电脑是某个厂商生产出来的,然后你买过来才成为了你的一部分。你死了以后,电脑也可以送给别人继续用啊!这就不叫做其存亡了,所以这是聚合。
class People{
String name;
String identityId; //身份属性的ID
Body body; //身体对象属性
//省略getter、setter方法
}
class Body{
String 内脏;
String 手;
String 脚;
}
class Identity{
Integer id;
String number; //身份证号
String name; //姓名
....
}
人(People)、身体(Body)、身份信息(Identity)之间的关系就有组合聚合
People和Body是组合关系,而People和Identity是聚合关系