设计模式-模板方法模式
定义
定义了一个算法的骨架,并允许子类为一个或多个步骤提供实现。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法的某些步骤。
适用场景
- 一次性实现一个算法的不变的部分,并将可变的行为留给子类来实现。
- 各个子类中公共的行为被提取出来并集中到一个公共父类中,从而避免代码重复。
UML
总结
- 优点
- 提高复用性。
- 提高扩展性。
- 符合开闭原则。
- 缺点
- 类数目增加。
- 增加了系统实现的复杂度。
- 继承关系自身缺点,如果父类添加新的抽象方法,所有子类都要改一遍。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 haominglfs的博客!