1. 程式人生 > >Java學習之模板方法模式

Java學習之模板方法模式

1.2 模板方法模式
父類中,建立了幾個方法,而且指定了做一件事情,需要使用那幾個方法,這些方法的先後順序也已經指定了。
模板方法是程式設計中經常要用到的模式。它定義了一個操作周哦你那個的演算法的骨架,將某些步驟延遲到子類中實現。這樣,子類可以咋不改變演算法的結構下重新定義該演算法的特定步驟。
即:處理步驟在父類中定義好,具體實現延遲到子類中。

演示案例: 銀行辦理業務流程

/*模板方法類,定義了處理事務的模板步驟和所使用的方法*/
public abstract class BankBusiness {
	public void doBusiness() {
		takeNumber();
		transact();
		evaluate();
	}
	void takeNumber() {
		System.out.println("請取號");
	}
	void evaluate() {
		System.out.println("請對我們的服務給予評價");
	}
	
	abstract void transact();	
}
/*子類,重寫部分方法*/
public class SaveMoney extends BankBusiness{
	@Override
	void transact() {
		System.out.println("我要存錢");
	}
}

public class TestAll {
	public static void main(String[] args) {
		BankBusiness bb = new TakeMoney();
		bb.doBusiness();
		bb = new SaveMoney();
		bb.doBusiness();		
	}
}