分爲兩部分:抽象模板,具體模板
抽象模板:
public abstract class Template {
private void doSomeThingsBefore(){
System.out.println("之前模板做的事情");
}
private void doSomeThingsAfter(){
System.out.println("之後模板做的事情");
}
public abstract void doSomething();
public void operate(){
doSomeThingsBefore();
doSomething();
doSomeThingsAfter();
}
}
具體模板:
public class ConcreteTemplate extends Template {
@Override
public void doSomething() {
System.out.println("這個子模塊做了某些事");
}
}
運行:
public class Test {
public static void main(String[] args){
ConcreteTemplate template = new ConcreteTemplate();
template.operate();
}
}
模板模式是把公有的頂級邏輯操作抽離出來,放入超類,減少代碼的重複率,增加開發速度。