合成聚合

定义

 合成聚合又叫合成复用原则,其定义为尽量使用对象组合,而非继承来达到复用的目的,即在新对象中使用已有对象,使之成为新对象的一部分;新对象通过这些对象的委派达到复用已有功能的目的。

源由

在面向对象设计中,复用已有的设计方式主要有两种:继承与组合/聚合。

继承:使用继承关系来实现复用,虽实现简单,易于扩展,但由于从基类继承而来的实现是静态的,不能在运行时发生改变,其灵活性不足,且继承关系会在一定程度上破坏系统的封装性,类与类之间的耦合度较高。故使用继承关系对已有设计实现复用有一定的缺陷性。

组合/聚合:组合与聚合在对已有设计进行复用时,相较于继承关系其耦合度较低,且在使用方式上组合与聚合更加灵活,当一个类发生变化时,对相关类的影响较小,而不是像继承关系中基类发生变化会影响所有子类。

小结

继承复用是通过扩展已有对象来实现新的功能,基类抓取共同的属性和方法,子类则通过增加新的属性和方法进行功能的扩展,继承是类型的复用;而组合/聚合复用则可以将已有的对象放入新的对象中,成为新对象的一部分,新对象可以对已有对象的功能进行调用,这种复用可以在运行时间内动态的进行,并且新对象可以动态地引用与成分对象类型相同的对象。

参考链接:https://blog.csdn.net/liaoqianchuan00/article/details/8230459

                 https://blog.csdn.net/u010832572/article/details/45007933

你可能感兴趣的:(合成聚合)