定義乙個操作中的演算法的骨架,而將一些步驟延遲到子類中。
模板方法使得子類可以不改變乙個演算法的結構即可重定義該演算法的某些特定步驟。
public
class
template_main
}//模板定義,提供給外部同型別樣式,特殊方法特殊實現
abstract
class
abstractplay
private
void
prepare()
abstract
void
play()
;private
void
end()}
//游泳運動可以套用模板功能,只需專注不同於模板的東西即可
class
swimming
extends
abstractplay
}class
football
extends
abstractplay
}
設計模式 》模板模式(行為型模式)
在模板模式 template pattern 中,乙個抽象類公開定義了執行它的方法的方式 模板。它的子類可以按需要重寫方法實現,但呼叫將以抽象類中定義的方式進行。這種型別的設計模式屬於行為型模式。意圖 定義乙個操作中的演算法的骨架,而將一些步驟延遲到子類中。模板方法使得子類可以不改變乙個演算法的結構...
設計模式 行為型 模板方法模式
定義演算法框架,將一些步驟的實現延遲至子類,就是說把實現某一些功能會有一些重複的共有的步驟,放在公共的類中,將 不同的細節由其子類實現,例如炒菜,都要切菜,放油,和炒菜,但炒不同的菜需要放不同的調味料 定義乙個抽象類,將公共的方法提取出來構建模板方法,不同的則由其子類實現 create by hji...
設計模式 行為型模式 模板方法
定義乙個操作中的演算法骨架,而將演算法的一些步驟延遲到子類中,使得子類可以不改變該演算法結構的情況下重定義該演算法的某些特定步驟。屬於類行為型模式。優點封裝了不變部分,拓展可變部分。它把認為是不變部分的演算法封裝到父類中實現,而把可變部分演算法由子類繼承實現,便於子類繼續擴充套件 在父類中提取了公共...