LouisTsang-jk.github.io

模版方法模式

组成

思想

子类通过继承抽象类,也继承了整个算法结构,并且可以选择重写父类的方法。

示例

经典Demo——Coffee or Tea

泡咖啡的流程

  1. 把水煮沸
  2. 用沸水冲泡咖啡
  3. 把咖啡倒进杯子
  4. 加糖和牛奶

泡茶的流程

  1. 把水煮沸
  2. 把沸水浸泡茶叶
  3. 把茶水倒入杯子
  4. 加柠檬

两个过程中,可以抽象出:

抽离父类来表示一杯饮料的制作过程。