03 模板方法(Template Method)

2021-10-23 13:51:59 字數 730 閱讀 3499

定義乙個操作中的演算法的骨架(穩定),而將一些步驟延遲(變化)到子類中。template method使得子類可以不改變(復用)乙個演算法的結構即可重定義(override 重寫)該演算法的某些特定步驟。

原開發任務分配:

通過template method設計後的開發任務分配:

程式庫開發人員開發模組**:

class

library

for(

int i =

0; i <

4; i++

)step5()

;}virtual

~library()

protected

:void

step1()

void

step3()

void

step5()

virtual

bool

step2()

=0;//變化

virtual

void

step4()

=0;//變化

};

應用程式開發人員開發模組**:

class

:public library

virtual

void

step4()

};intmain()

}

本專欄文章:

JAVA 設計模式03 模板方法

模板方法,應用在流程相同,但是具體實現不同的場景中。它定義了乙個操作中的演算法骨架,但某些步驟的實現放在子類中實現,子類在不改變整體演算法結構的前提下,能夠重新定義演算法中的某些特定步驟。如 銀行的業務流程 取號 業務 評價 由父類決定整個的流程,子類只能改變部分特定的步驟 模板方法 author ...

03類模板

類模板 把通用類變成模板!template class 或 typename t class 類名 template class t class math 在類定義體外定義成員函式時,還需要類體外進行模板宣告 template class t class math 成員函式在外部實現 templat...

關於方法的過載03

package bisic public class testoverload03 private testoverload03 double c public static void main string args new testoverload03 null new testoverload...