java中组合聚合的概念
一、组合
组合是一种强烈的"has-a"关系,是关联关系的一种,是比聚合关系强的关系。包含对象拥有它,代表部分的对象在每一个时刻只能与一个对象发生组合关系,由后者排他地负责生命周期。部分和整体的生命周期一样。
二、聚合
聚合也是一种"has-a"关系,是关联关系的一种,是强的关联关系。它与组合的区别是:它不涉及拥有。
对象的生命周期没有绑定:每个对象的生命周期可以彼此独立存在。聚合是整体和个体之间的关系。
三、实现组合、聚合的代码
1、组合:
myInstructor.set(“teng”,“6”,“101”);
System.out.println(myCourse);
class Person{
private Hand hand;
public Person(){
hand = new Hand();
}
}
2、聚合:
myTextBook.set(“C++”,“a”,“aa”);
System.out.println(myCourse);*
class Person{
private Computer computer;
public setComputer(){
computer = new Computer();
}
}