优点:

  1.模板方法模式通过把不变的行为搬移到超类,去除了子类中的重复代码。

  2.子类实现算法的某些细节,有助于算法的扩展。

  3.通过一个父类调用子类实现的操作,通过子类扩展增加新的行为,符合“开放-封闭原则”。

缺点:

  每个不同的实现都需要定义一个子类,这会导致类的个数的增加,设计更加抽象。

适用场景:

  1.在某些类的算法中,用了相同的方法,造成代码的重复。

  2.控制子类扩展,子类必须遵守算法规则。

设计模式 22 模板方法模式

相关文章:

  • 2021-04-01
  • 2021-07-09
猜你喜欢
  • 2021-08-08
  • 2021-12-21
  • 2021-05-07
  • 2021-07-13
  • 2021-08-18
  • 2021-05-31
相关资源
相似解决方案