模板方法模式 提高**的復用性 把常用的基本方法放入父類中 強調一種流程步驟 角色 抽象類 抽象方法 具體方法 鉤子方法 空方法 通過bool控制 具體類看例子
1.銀行模板類
2.具體業務package templatemethod;
/** * created by jiqing on 2016/10/31.
*/public
abstract
class
banktemplatemethod
public
abstract
void
transact();
public
void
evaluate()
public
void
process()
}
package
templatemethod;
/** * created by jiqing on 2016/10/31.
*/public class
deposit
extends
banktemplatemethod
}
package
templatemethod;
/** * created by jiqing on 2016/10/31.
*/public class
transfer
extends
banktemplatemethod
}
4.客戶端package
templatemethod;
/** * created by jiqing on 2016/10/31.
*/public class
withdraw
extends
banktemplatemethod
}
結果:package templatemethod;
/** * created by jiqing on 2016/10/31.
*/public
class
client
}
取號排隊。
存款反饋評分。
---------------------------------------
取號排隊。
轉賬反饋評分。
設計模式 Java設計模式之模板方法模式
本文源自 人生之旅 諳憶的部落格 我們先這樣來想象乙個生活中的場景,就是我們在銀行櫃檯進行辦理業務的時候,會進行這幾步 step1 進門取號 step2 填寫單據 step3 等待叫號 step4 視窗辦理 在這裡,無論是你我還是他 她,都會遵循這個模板進行業務的辦理!我們具體看step2,銀行是無...
JAVA設計模式之 模板方法模式
我們在生活中,很多事情都包含特定的一些步驟。如去銀行辦理業務,通常步驟的次序是 取號 填單 等待叫號 辦理業務。這幾個步驟中,有的是不變的,比如取號,每個人都要取,但有的是要變的,比如都有填單,但是根據不同的業務,填寫的單據不同。又比如我們外出吃飯,一般的步驟是 點餐 等待 吃飯 付錢,也能發現同樣...
Java設計模式之 模板方法模式
在物件導向開發過程中,通常會遇到這樣的乙個問題,我們知道乙個演算法所需的關鍵步驟,並確定了這些步驟的執行順序,但是,某些步驟的具體實現是未知的,或者說某些步驟的實現是會隨著環境的變化而改變的,例如,執行程式的流程大致如下 對於不同的程式語言,上述 4 個步驟都是不一樣的,但是,它們的執行流程是固定的...