说明
定义一个抽象类作为模板,将具体做事情方法定义出来,但是不实现,即定义为抽象方法
对外提供一个共有的方法作为接口,规定做事情的顺序,此方法为模板方法,应声明为final,禁止子类重写即此方法中把各种要实现的方法按一定的顺序排列好
子类继承模板,实现所有的抽象方法(需要具体做的事情)
示例
如定义一个模板
查看代码
public abstract class Beverage {
/**
* 冲泡咖啡或茶...流程
*/
public final void create(){
boilWater();//把水煮沸
brew();//用沸水冲泡...
pourInCup();//把...倒进杯子
addCoundiments();//加...
}
public abstract void addCoundiments();
public abstract void brew();
public void boilWater() { System.out.println("煮开水"); }
public void pourInCup() { System.out.println("倒进杯子"); }
}
这之后用冲咖啡或冲茶的类进行继承并实现其中的未实现的方法,就可以了,主类中调用相应对象creat方法就完成了。