设计模式学习(三)模板方法模式
一、使用背景【动机】
在某一个任务中,其通常具有稳定的主干结构,而子步骤却可能会有很多可改变的地方。
二、代码演示
模板类
子类
测试类【模拟主流程调用】
三、模式讲解
解析:定义一个操作中的算法骨架【模板方法(稳定):TemplateDemo.order()】,而将一些步骤【抽象方法(变化):TemplateDemo模板类中定义的抽象方法】延迟到子类中去实现。
目的:使得子类可以不改变【复用】一个算法的结构,而又可以重定义【override重写】此算法的某些特定步骤。