设计模式中类的6种关系

纵向关系:

继承(泛化):子类is a 父类。鸟和动物

实现:唐老鸭和说话


横向关系:强弱程度依次为:组合>聚合>关联>依赖依赖:

依赖:使用关系(工具)。代码中实现依赖关系时,通常将一个类的对象作为另一个类的作方法参数、方法中的局部变量、或者静态方法调用。单向。动物和水

关联:结构关系(来往)。代码中实现关联关系时,通常将一个类的对象作为另一个类的属性。单向、双向。1对多,多对多,1对1。企鹅和气候


 复合@class

聚合:has a(有的关系)。整体和部分不具同一生命周期。代码中实现关联关系时,通常将一个类的对象作为另一个类的属性。雁群和大雁

组合(强聚合):has a(有的关系)。整体和部分具同一生命周期。代码中实现关联关系时,通常将一个类的对象作为另一个类的属性。鸟和翅膀


设计模式中类的6种关系