23種設計模式 14 模板方法模式

2021-09-29 06:16:48 字數 1136 閱讀 2600

第一種實現:抽象類

/// /// 第一種實現:抽象類

///

public abstract class makefood

public void pouroil()

public void waitoilhot()

/// /// 具體往鍋裡倒哪個菜,交給子類,子類必須實現

///

public abstract void pourfood();

public void startpot()

}

/// /// 炒土豆

///

public class makepatato : makefood

}public class makechicken : makefood

}

private static void testabstract()

第二種實現:虛方法

/// /// 第二種實現:虛方法(提供預設實現)

///

public class makefoodnew

public void pouroil()

public void waitoilhot()

/// /// 具體往鍋裡倒哪個菜,交給子類,子類必須實現

///

public virtual void pourfood()

public void startpot()

}

public class makechickennew : makefoodnew

}public class makepatatonew : makefoodnew

private static void testvirtual()

測試:

class program

private static void testabstract()

private static void testvirtual()

}

23種設計模式 模板方法模式

參考文件 通常叫模板方法模式定義乙個演算法的骨架,並允許子類為乙個或者多個步驟提供實現。能夠使得子類可以在不改變演算法結構的情況下,重新定義演算法的某些步驟。屬於行為性設計模式 一次性實現乙個演算法的不變的部分,並將可變的部分交給子類來實現 各子類中公共的行為被提取出來並集中到乙個公共的父類當中,從...

23種設計模式 06模板方法模式

模板方法模式太簡單,我都感覺不像乙個設計模式,這個模式沒有學過設計模式的同學也可能非常容易的想到,並寫出來,那麼下面,我的簡單的舉個例子吧!uml圖就不用畫了 小明小紅 cpur5 i7記憶體條 16g16g 顯示卡gtx 1650 集顯硬碟 500g 500g 此時,我們發現,配置過程中,除了硬體...

23種設計模式 模板模式

在軟體構建過程中,對於某一項任務,它常常有穩定的整體操作結構,但各個子步驟卻有很多改變的需求,或者由於固有的原因 比如說框架與應用之間的關係 而無法和任務的整體結構同時實現。如何在確定穩定操作的前提下,來靈活應對各個子步驟的變化或者晚期的需求?定義乙個操作中的演算法的骨架 穩定 而將一些步驟延遲 變...