Template Method(模板方法)

2021-09-25 22:00:23 字數 648 閱讀 5423

個人理解:就好像領導給你乙個**讓你填,**本身就是個模板,你必須在它規定的 年齡欄中填寫你的年齡,在個人能力欄中填寫自己的個人能力,你領導看完你填的**,又給了你對面同事一張讓他填,雖然你們的**(抽象類或介面)都一樣,但是你們填寫的具體的年齡和個人能力(具體實現方法)因人而異,這就是模板方法。

其實就是:介面或者抽象類定義好方法框架(穩定的),實現類(變化的)去遵循這個定義好的框架,但是實現類中每個方法的具體實現是實現類根據自己情況寫的(如:activity中的oncreate()方法)

舉個簡單例子:

這是乙個模板 **結婚都要彩禮的

inte***ce 結婚
張三結婚了,他的媳婦是仙女,天上的彩禮可不便宜,於是他結婚所需要的彩禮是10w

class 張三  : 結婚 

}

李四也結婚了,他的媳婦是某個農村的平凡姑娘,他的彩禮是50w,丈母娘說少一分都不行!!!由於兩人愛的深切,所以李四借錢結了婚~

class 李四: 結婚 

}

總結:模板方法 找出共性進行封裝,減少重複**

Template Method 模板模式

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

設計模式 template method

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

模板模式 Template Method

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