五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

設(shè)計模式-模板方法模式

2023-03-15 17:25 作者:回到唐朝當(dāng)少爺  | 我要投稿
  1. 模板方法模式(Template Method Pattern)又叫模板模式,在一個抽象類公開定義了執(zhí)行它的方法的模板.它的子類可以按需要重寫方法實現(xiàn),但調(diào)用將以抽象類中定義的方式進(jìn)行

  2. 簡單說,模板方法模式定義一個操作中的算法的骨架,而將一些步驟延遲到子類中,使得子類可以不改變一個算法的結(jié)構(gòu),就可以重定義該算法的某些特定步驟

  3. 這種類型的設(shè)計模式屬于行為型模式

案例

編寫制作豆?jié){的程序

  • 制作豆?jié){的流程,選材→添加配料→浸泡→放到豆?jié){機(jī)打碎

  • 通過添加不同的配料,可以制作出不同口味的豆?jié){

  • 選材,浸泡和放到豆?jié){機(jī)打碎這幾個步驟對于制作每種口味的豆?jié){都是一樣的(如紅豆豆?jié){,花生豆?jié){)



鉤子方法

  1. 在模板方法模式的父類中,我們可以定義一個方法,它默認(rèn)不做任何事,子類可以視情況要不要覆蓋它,該方法稱為"鉤子"

  2. 比如,我們還希望制作純豆?jié){,不添加任何的配料,使用鉤子方法對前面的模板方法進(jìn)行改造

注意事項和細(xì)節(jié)

  1. 基本思想:算法只存在于一個地方,也就是在父類中,容易修改.需要修改算法時,只要修改父類的模板方法或者已經(jīng)實現(xiàn)的某些步驟,子類就會繼承這些修改

  2. 實現(xiàn)了最大化代碼復(fù)用.父類的模板方法和已實現(xiàn)的某些步驟會被子類繼承而直接使用

  3. 既統(tǒng)一了算法,也提供了很大的靈活性.父類的模板方法保證了算法的結(jié)構(gòu)保持不變,同時由子類提供部分步驟的實現(xiàn)

  4. 不足之處:每一個不同的實現(xiàn)都需要一個子類實現(xiàn),導(dǎo)致類的個數(shù)增加,使得系統(tǒng)更加龐大

  5. 一般模板方法都會加上final關(guān)鍵字,防止子類重寫模板方法

  6. 應(yīng)用場景:當(dāng)要完成某個過程,該過程要執(zhí)行一系列步驟,這一系列的步驟基本相同,但其個別步驟在實現(xiàn)時可能不同,通??紤]用模板方法模式進(jìn)行處理


設(shè)計模式-模板方法模式的評論 (共 條)

分享到微博請遵守國家法律
通江县| 伊吾县| 涞水县| 甘肃省| 苏尼特右旗| 乐至县| 肇东市| 延津县| 和林格尔县| 晴隆县| 景谷| 大港区| 白山市| 九江市| 重庆市| 和田县| 上犹县| 屏南县| 衡山县| 淮阳县| 济阳县| 光泽县| 玉山县| 商丘市| 句容市| 杭锦旗| 静乐县| 康保县| 鄯善县| 民勤县| 垫江县| 松潘县| 綦江县| 茌平县| 浦江县| 方山县| 汉中市| 湘潭县| 喀喇沁旗| 宜君县| 永康市|