美文网首页达叔的朋友圈们
大话设计模式读书笔记-10模板方法模式

大话设计模式读书笔记-10模板方法模式

作者: QuietHeart | 来源:发表于2020-03-23 08:26 被阅读0次

第10章 考题抄错会做也白搭——模板方法模式

定义

用抽象类定义操作算法骨架,将公共的部分提取;具体的实现与差异部分放到子类实现。

实现

  1. Abstract Class,抽象类/模板,定义了方法的顶级逻辑框架,比如包含具有哪些步骤。
  2. Concrete Class,具体类,用不同的方式对模板逻辑框架中的步骤进行具体实现。

类图:

img

抽象类实现:

img

客户端使用:

img

例如:考试答卷子,整个过程(answer2(),answer2()…), 就是一个模板方法,而不同的人,对answerx()的实现不同。

总结

模板方法作用是将不变的东西搬挪到父亲类实现,减少各个子类的重复代码。

既然选择了继承,继承的时候就要让父类成为子类的模板,所有重复的代码都要上升到父类中去,而不是让每个子类都重复。

相关文章

网友评论

    本文标题:大话设计模式读书笔记-10模板方法模式

    本文链接:https://www.haomeiwen.com/subject/exfnshtx.html