如果我正确理解组成和聚合是对象共享的关系。 在合成中,没有父对象就不能存在从属对象。而在聚合中,从属对象可以不存在父对象而存在。 在Java中,通过具有非静态内部类来实现组合,而在具有静态内部类或对象引用时可以实现聚合。 如果我错了,请纠正我。浏览了很多网站,但只是困惑而未得到满意的答案。
szchengw 回答:Java中的组合和聚合之间有什么区别?
首先,组合和聚合都是部分关联。 关联意味着类之间存在联系。
在组成中,两个实体相互高度依赖,并且没有另一个实体就无法存在所组成的对象。
class Employee{
}
class Company{
List<Employee> employeeList;
}
汇总:
是单向关联(单向关系) 这两个条目都可以单独生存,这意味着结束一个实体不会影响另一个实体
//Either girl like boy
class Girl{
List<Boy> boyList;
}
//Either boy like like
class Boy{
List<Girl> girlList;
}
我给出这个示例是因为我是一名程序员,您也知道这一点。