模板設計模式

2021-09-11 16:55:00 字數 1008 閱讀 1962

在模板模式(template pattern)中,乙個抽象類公開定義了執行它的方法的方式/模板。它的子類可以按需要重寫方法實現,但呼叫將以抽象類中定義的方式進行。這種型別的設計模式屬於行為型模式。

優點: 1、封裝不變部分,擴充套件可變部分。 2、提取公共**,便於維護。 3、行為由父類控制,子類實現。

缺點:每乙個不同的實現都需要乙個子類來實現,導致類的個數增加,使得系統更加龐大。

首先建立乙個具有相同工序的抽象類

/**

* 畫畫工序抽象類

* @author xxj

* * 2023年3月1日 下午2:33:28

*/public abstract class abstractdraw

//選擇畫筆

public abstract void brushtype();

public void end()

//畫畫工序

public void work()

}

繼承這個模板抽象類,建立具有不同實現過程的子類

/**

* 選擇鉛筆

* @author xxj

* * 2023年3月1日 下午2:39:06

*/public class pencilbrush extends abstractdraw

}

/**

* 選擇毛筆

* @author xxj

* * 2023年3月1日 下午2:39:37

*/public class writingbrush extends abstractdraw

}

編寫測試類test

public class test 

}

執行結果顯示

模板設計模式 設計模式 模板方法模式

在模板模式 template pattern 中,乙個抽象類公開定義了執行它的方法的方式 模板。它的子類可以按需要重寫方法實現,但呼叫將以抽象類中定義的方式進行。這種型別的設計模式屬於行為型模式。首先需要一定抽象的定義,沒有具體的實現,但是在抽象類的行為中,子類去程序這個抽象類,重寫抽象方法,實現不...

模板設計模式 設計模式之模板模式

模板模式,通常又叫做模板方法模式,乙個抽象類公開定義了執行方法的模板,它的子類可以按需要重寫方法實現,但呼叫將以抽象類中定義的方法進行,這種型別的設計模式屬於行為型模式。模板模式主要解決將通用的演算法抽象起來,同樣的 邏輯出現了重複,就可以使用模板模式進行重構。關鍵 在抽象類實現,其他步驟在子類實現...

設計模式 模板設計模式

1 抽象類 abstractclass類中實現了模板方法 template 定義了演算法的骨架,具體子類需要去實現,抽象方法operationr2,3,4 template operationr2,3,4可以是抽象方法,也可以是實現方法 如果是抽象方法,需要到子類實現即可 2 實現類 concret...