模板模式使用抽象操作在基類中定義基本演算法,其中子類覆蓋具體行為。模板模式將演算法的輪廓保留在單獨的方法中。該方法被稱為模板方法。
以下是模板模式的不同功能 -
它定義了操作中演算法的骨架。
它包括子類,它重新定義了演算法的某些步驟。
有關模板設計模式的實現,請參考以下** -
class makemeal:
def prepare(self): pass
def cook(self): pass
def eat(self): pass
def go(self):
self.prepare()
self.cook()
self.eat()
class makepizza(makemeal):
def prepare(self):
print "prepare pizza"
def cook(self):
print "cook pizza"
def eat(self):
print "eat pizza"
class maketea(makemeal):
def prepare(self):
print "prepare tea"
def cook(self):
print "cook tea"
def eat(self):
print "eat tea"
makepizza = makepizza()
makepizza.go()
print 25*"+"
maketea = maketea()
maketea.go()
執行上面示例**,得到以下結果 -
解釋說明
此**建立乙個模板來準備餐點。 在這裡,引數表示用於建立茶,披薩等餐點的一部分的屬性。輸出表示屬性的視覺化。
¥ 我要打賞
糾錯/補充
收藏加qq群啦,易百教程官方技術學習群
注意:建議每個人選自己的技術方向**,同乙個qq最多限加 3 個群。
JavaScript設計模式九(模板方法模式)
定義 模板方法模式是一種只需要使用繼承就可以實現的非常簡單的模式 模板方法模式由兩部分組成,第一部分是抽象父類,另一部分是具體的實現子類。通常抽象父類中封裝了子類的演算法框架,包括實現一些公共的方法以及封裝子類中所有方法的執行順序。子類通過繼承這個類,然後繼承了這個演算法,然後重寫父類的方法 例子是...
模板設計模式 設計模式 模板方法模式
在模板模式 template pattern 中,乙個抽象類公開定義了執行它的方法的方式 模板。它的子類可以按需要重寫方法實現,但呼叫將以抽象類中定義的方式進行。這種型別的設計模式屬於行為型模式。首先需要一定抽象的定義,沒有具體的實現,但是在抽象類的行為中,子類去程序這個抽象類,重寫抽象方法,實現不...
模板設計模式 設計模式之模板模式
模板模式,通常又叫做模板方法模式,乙個抽象類公開定義了執行方法的模板,它的子類可以按需要重寫方法實現,但呼叫將以抽象類中定義的方法進行,這種型別的設計模式屬於行為型模式。模板模式主要解決將通用的演算法抽象起來,同樣的 邏輯出現了重複,就可以使用模板模式進行重構。關鍵 在抽象類實現,其他步驟在子類實現...