模板方法模式是定义好算法的步骤,其中一些步骤由子类去实现
类图
示例
public class abstract Cook {
// 做饭的步骤1,希望子类提供
public abstract void step1();
public void step2(){
// 步骤2
}
// 模板方法
public void cook(){
this.step1();
this.step2();
}
}
子类
public class ChineseCook implements Cook {
@overrite
void step1(){
// do something
}
}
使用:
Cook cook = new ChineseCook();
cook.cook();