Java的聚合与组合关系的区分
聚合关系
1.一个类的实例作为另一个类的属性,我们称之为“对象聚合”(aggregation)。
2.当一个类的实例成为另一个类的成员,我们就说这两个类之间存在“Has a”’关系。
3.它包含另一个类对象:address,其包含它自己的信息,例如:城市,州,国家,邮政编码等。
其中整体和部分之间的包含关系相对松散。
组合关系
1.如果一个对象只归集于一个聚集对象,那么它和聚集对象之间的关系就称为“组合”(composition)。
2.一个对象与聚集对象的两个类之间存在是’Part-od’的关系
3.整体与部分的包含关系相对紧密,部分与整体是与生俱来的,部分的存在依赖于整体。