模板方法模式是程式設計中經常用得到的模式,它定義了乙個操作中的演算法核心,然後將某些步驟延遲到子類中實現。這樣,新的子類可以在不改變乙個演算法結構的前提下重新定義該演算法的某些特定的步驟。
換個說法就是某個流程的**已經都具備了,但是其中某個節點的**暫時不能確定,因此,我們採用模板方法模式,將這個節點的**實現轉移到子類中完成,即:處理步驟父類中定義好,具體的實現延遲到子類定義中。
我們通過銀行辦理業務,排隊區號來操作來模擬模板模式。
/**
* 父類
* @author 波波烤鴨
* */
public
abstract
class
banktemplatemethod
/** * 辦理具體的業務 鉤子方法:抽象方法,交給子類去實現
*/public
abstract
void
transact()
;/**
* 具體方法
*/public
void
evaluate()
/** * 模板方法!!!
*/public
final
void
process()
}
測試類
public
static
void
main
(string[
] args)};
btm1.
process()
; system.out.
println
("---------------------------");
banktemplatemethod btm2 =
newbanktemplatemethod()
};btm2.
process()
;}
輸出
取號排隊
我要存錢!
反饋評分
---------------------------
取號排隊
我要理財!我這裡有2000萬韓幣
反饋評分
小結:銀行為了方便顧客辦理業務,所以制定了一套固定的業務流程。比如來了先取號排隊,然後辦理業務,然後評分。取號排隊和評分這些功能銀行可以實現,但是辦理具體的業務就得具體的顧客來實現了。這就是模板模式。
資料庫訪問的封裝
junit單元測試
servlet中的doget和dopost方法
hibernate中的模板程式
spring中的jdbctemplate,hibernatetemplate等
…
WPF樣式(Style)與模板(Template)
一 wpf樣式 類似於web應用程式中的css,在wpf中可以為控制項定義統一的樣式 style 樣式屬於資源的一種,例如為button定義統一的背景顏色和字型 1 2 9 10 11 button a12 button b13 從執行的結果上來看 這種樣式,類似於css中的型別選擇器,為某種型別定...
Java 設計模式 模板模式
本文由 luzhuo 編寫,請保留該資訊.原文 定義乙個演算法 程式 的骨架,從而讓子類根據這個骨架實現剩餘的邏輯 抽象模板 author luzhuo public abstract class time protected abstract void code 具體模板 author luzhu...
java設計模式 模板模式
1.1 定義 1.2 主要作用 1.3 解決的問題 實現了反向控制 通過乙個父類呼叫其子類的操作,通過對子類的具體實現擴充套件不同的行為,實現了反向控制 符合 開閉原則 2.1 uml類圖 組成 2.2 例項講解 衝突 兩道菜的炒菜步驟有的重複有的卻差異很大,記不住 解決方案 利用 記錄下來 步驟1...