模板方法
2019-04-24 本文已影响0人
yym_439
定义
- 定义了一个方法的骨架,并允许子类为一个或多个步骤提供实现
- 子类可以在不改变算法结构的情况下,从新定义某些算法的步骤
类型:行为型
使用场景
- 一次性实现算法不变的部分,并将可变行为留给子类来实现
- 各子类中公共的行为被提取出来并集中到一个公共的父类中,避免代码重复
优缺点
优点:
- 提高复用性
- 提高扩展性
- 符合开闭原则
缺点:
- 类数目增加
- 增加系统复杂度
- 继承关系自身缺点,如果父类添加新的抽象方法,所有子类都要改一遍
UML类图
