模板方法模式

定义

  • 定义一个操作中的算法的框架,将部分步骤延迟到子类实现,子类可以不改变算法的结构,重新定义该算法的某些特定步骤
    • 钩子方法(Hook Method):父类定义行为,子类实现,返回值影响公共部分的执行结果

应用场景

  • 一次性实现算法不变的部分,将变化的部分留给子类实现
  • 多个子类具有相同的方法,并且逻辑大致相同时

类图

模板方法.png

优缺点

  • 优点
    • 提取公共部分代码,减少代码重复,提升代码复用
    • 封装不变部分,扩展可变部分,扩展性好,符合开闭原则
  • 缺点
    • 类的数量增多
    • 增加复杂度
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。