我们可以通过继承和组合的方式来给一个对象添加行为,虽然使用继承能够很好拥有父类的行为,但是它存在几个缺陷:一、对象之间的关系复杂的话,系统变得复杂不利于维护。二、容易产生“类爆炸”现象。三、是静态的。在这里我们可以通过使用装饰者模式来解决这个问题。

装饰者模式,动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更加有弹性的替代方案。虽然装饰者模式能够动态将责任附加到对象上,但是他会产生许多的细小对象,增加了系统的复杂度。

结构型模式(4)--装饰模式

模式结构
装饰模式包含如下角色:
Component: 抽象构件
ConcreteComponent: 具体构件
Decorator: 抽象装饰类
ConcreteDecorator: 具体装饰类 

相关文章:

  • 2021-08-23
  • 2022-03-05
  • 2022-12-23
  • 2021-09-06
  • 2021-12-24
  • 2021-12-27
  • 2021-11-23
猜你喜欢
  • 2021-08-30
  • 2021-09-01
  • 2021-10-22
  • 2022-12-23
  • 2021-07-31
  • 2021-07-22
相关资源
相似解决方案