美文网首页达叔的朋友圈们
大话设计模式读书笔记-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