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