TemplateMethod 模組方法模式

2022-02-01 03:39:54 字數 694 閱讀 9420

/**

* 模組模式

* @author

tmac-j

* 將乙個完整的演算法分離,分成不同的模組

* 用於有很多步驟的時候,可能以後這些步驟還會增加,把這些步驟分離

* 將有共性的部分放在抽象類中

* 避免**重複

* 有利於演算法擴充套件

* 假設這個演算法是人,人具有的共性是早上起來穿衣服,吃飯,工作 */

public

class

templatemethod

}public

class teacher extends

person

@override

void

eat()

@override

void

work()

//老師獨有的備課環節,擴充套件了這個步驟

public

void

prepare()

}public

class student extends

person

@override

void

eat()

@override

void

work()

}public

void

test()

}

Template Method 模板模式

模式定義 定義乙個操作中的演算法的骨架,而將一些步驟延遲到子類中,從而使得子類可以不改變乙個演算法的結構即可重定義該演算法的某些特定步驟。使用方法 各子類中公共的方法提煉出來,集中到父類中定義。而不同的子類所特有的方法,可以通過繼承父類的方法在內部自定義。使用範圍 多個子類存在共通的方法,個別的方法...

設計模式 template method

1 定義乙個操作中演算法的骨架,將一些步驟推遲到子類中實現。可以不改變演算法的結構而重定義該演算法的步驟 2 要完成在某乙個細節層次一致的乙個過程或一系列步驟,但其個別步驟在更詳細的層次上的實現可能不同。3 允許定義可變的子步驟,同時保持基本過程不致 4 由乙個抽象類組成,這個抽象類定義了需要覆蓋的...

模板模式 Template Method

定義 模板方法模式準備乙個抽象類,將部分邏輯以具體方法以及具體構造子的形式實現,然後宣告一些抽象方法來迫使子類實現剩餘的邏輯。不同的子類可以以不同的方式實現這些抽象方法,從而對剩餘的邏輯有不同的實現。先制定乙個頂級邏輯框架,而將邏輯的細節留給具體的子類去實現。開閉原則是指乙個軟體實體應該對擴充套件開...