聚合:表示两个对象之间是整体和部分的弱关系,成员对象可以脱离整体对象而独立存在。has-a关系
组合:表示两个对象之间是整体和部分的强关系,部分的生命周期不能超越整体,或者说不能脱离整体而存在。部分与整体具有统一的生存期。contains-a关系
代码中体现为:
组合:
class A
{
};
class B
A a1,a2;
};
聚合:
class C
A *a;
};
聚合:表示两个对象之间是整体和部分的弱关系,成员对象可以脱离整体对象而独立存在。has-a关系
组合:表示两个对象之间是整体和部分的强关系,部分的生命周期不能超越整体,或者说不能脱离整体而存在。部分与整体具有统一的生存期。contains-a关系
代码中体现为:
组合:
class A
{
};
class B
A a1,a2;
};
聚合:
class C
A *a;
};