设计模式 模板方法
概念

结构

案例实现

定义炒菜过程 抽象类 我们吧所有可能变化的方法定义为抽象方法
public abstract class AbstractClass {
public final void cookProcess(){
this.pureOil();
this.heatOil();
this.pourVegetable();
this.fry();
}
//倒油是固定
public void pureOil(){
System.out.println("倒油");
}
public void heatOil(){
System.out.println("热油");
}
//倒蔬菜 并不是一个固定的过程
public abstract void pourVegetable();
public void fry(){
System.out.println("进行一个菜的炒");
}
}
假设我们要炒包菜
public class ConcreteClass_BaoCai extends AbstractClass{
@Override
public void pourVegetable() {
System.out.println("放的是包菜");
}
public static void main(String[] args) {
ConcreteClass_BaoCai baoCai = new ConcreteClass_BaoCai();
baoCai.cookProcess();
}
}
总结



浙公网安备 33010602011771号