标签:img des pos att code 设计原则 html 好处 例子
组合/聚合复用原则(Composite/Aggregate Reuse Principle)是面向对象设计原则的一种。组合/聚合复用原则是指尽量使用组合/聚合,不要使用类继承。在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分,新对象通过向这些对象的委派达到复用已有功能的目的。就是说要尽量的使用合成和聚合,而不是继承关系达到复用的目的。
假如新对象的一些功能在其他已经创建好的对象里面已经实现,那么应该尽可能使用其他对象提供的功能,使之成为新对象的一部分,而不要再重新创建。
组合/聚合的优点:类相互间的耦合度比较低,一个类的变动对别的类造成的影响较为少,组合/聚合的缺点:类的数量增多实现起来较为复杂
public void talk(String name) {
System.out.println(name + " say hello");
}
public void walk(String name) {
System.out.println(name + " move");
}
}
public class Manager extends Person {
}
public class Employee extends Person {
}
根据组合/聚合复用原则大家需要首选组合,然后才能是继承,使用继承时需要严格的遵守里氏替换原则,务必满足“Is-A”的关系是才可以使用继承,而组合却是一种“Has-A”的关系。
由上面的代码能够看出,Manager和Employee继承了Person,但实际上每一个不同的职位具有不同的角色,如果大家填加了角色这个类,那麼继续使用继承的话只能使每个人只能具有一种角色,这显然是不科学的。
标签:img des pos att code 设计原则 html 好处 例子
原文地址:https://www.cnblogs.com/numpycomcn/p/11785139.html