大話設計模式之模板模式 C

2022-01-12 10:16:27 字數 1214 閱讀 8287

學無止境,精益求精

十年河東,十年河西,莫欺少年窮

今天一起**模板模式,如下:

以下讓我們來看一下它的準確定義:

模板方法(templatemethod)模式:定義乙個操作中的演算法的骨架,而將一些步驟延遲到子類中。模板方法使得子類能夠不改變乙個演算法的結構就可以重定義該演算法的某些特定的步驟。

抽象類(abstractclass):

1)定義了乙個或多個抽象操作,以便讓子類實現。這些抽象操作叫做基本操作,它們是乙個頂級邏輯的組成步驟。2)定義並實現了乙個模板方法,這個模板方法通常是乙個詳細的方法,它給出了乙個頂級邏輯的骨架,而邏輯的組成步驟在對應的抽象操作中,推遲到子類實現。

詳細類(concreteclass):

1)實現父類所定義的乙個或多個抽象方法,它們是乙個頂級邏輯在組成步驟。

2)每個抽象模板角色都能夠有隨意多個詳細模板角色與之相應,而每個詳細模板角色都能夠給出這些抽象方法的不同實現,從而使得頂級邏輯的實現各不同樣。

總結:(1)模板方法模式是通過把不變行為搬移到超類,取出子類中的重複**來體現它的優勢。(2)模板方式模式就是提供乙個很好的**復用平台。

(3)當不變的和可變的行為在方法的子類實現中混合在一起的時候,不變的行為就會在子類中重複出現。我們通過模板方法模式把這些行為搬到單一的地方,這樣就幫助子類擺脫重複的不變行為的糾纏。

@陳臥龍的部落格

《大話設計模式》 模板模式

題目 相同的兩份試卷,甲乙兩個人做,答案不同 public class testpager protected string answer public class testpagera extends testpager public class testpagerb extends testpa...

大話設計模式八之模板方法模式

幾年之前,那時候很流行微軟的mcse和mcsd的認證考試。於是國內就出現了血多培訓機構。大學生們為了能找到好工作都去參加這個培訓。有個哥們,不是計算機專業的,對軟體開放也算基本不懂吧,但是英文特好,於是它參加了這個培訓後,短短乙個多月,靠著背答案,竟然把mcsd的證書考出來了。乙個幾乎不會開放的人卻...

大話設計模式 模板方法模式

一 模式介紹 模板方法模式特別適合於整體流程 演算法 固定,只有一小部分功能不同的場景 通過乙個抽象父類構造起整個骨架,而將不固定的部分以抽象方法的形式保留,交給子類去具體實現 二 採用模板方法模式實現街邊小吃 烤冷麵 假設烤冷麵製作流程是固定的 1.加熱麵餅,2.加調料 我們先來實現乙個製作骨架 ...