二維碼
        企資網(wǎng)

        掃一掃關(guān)注

        當前位置: 首頁 » 企資快報 » 科普知識 » 正文

        C也設(shè)計模式-策略模式(Strategy)

        放大字體  縮小字體 發(fā)布日期:2022-12-19 03:25:55    作者:百里海蕓    瀏覽次數(shù):59
        導(dǎo)讀

        定義Strategy設(shè)計模式定義了一系列算法,分別封裝起來,并使它們之間可以互相替換。此模式允許讓算法得變化獨立于使用它得客戶。OO設(shè)計原則封裝變化多用組合,少用繼承針對接口編程,不針對實現(xiàn)編程類圖策略模型類圖

        定義

        Strategy設(shè)計模式定義了一系列算法,分別封裝起來,并使它們之間可以互相替換。此模式允許讓算法得變化獨立于使用它得客戶。

        OO設(shè)計原則
      1. 封裝變化
      2. 多用組合,少用繼承
      3. 針對接口編程,不針對實現(xiàn)編程類圖

        策略模型類圖

        代碼

        namespace DesignPattern.Strategy.Structural{ /// <summary> /// The 'Context' class /// </summary> public class Context { Strategy strategy; public Context(Strategy strategy) { this.strategy = strategy; } public void ContextInterface() { strategy.AlgorithmInterface(); } } /// <summary> /// The 'Strategy' class /// </summary> public abstract class Strategy { public abstract void AlgorithmInterface(); } /// <summary> /// The 'StrategyA' class /// </summary> public class StrategyA: Strategy { public override void AlgorithmInterface() { Console.WriteLine("ConcreteStrategyA AlgorithmInterface."); } } /// <summary> /// The 'StrategyB' class /// </summary> public class StrategyB : Strategy { public override void AlgorithmInterface() { Console.WriteLine("ConcreteStrategyB.AlgorithmInterface."); } } /// <summary> /// The 'StrategyC' class /// </summary> public class StrategyC : Strategy { public override void AlgorithmInterface() { Console.WriteLine("ConcreteStrategyC.AlgorithmInterface."); } } /// <summary> /// MainApp startup class for Structural /// </summary> public class Program { private static void Main(string[] args) { Context context; context = new Context(new StrategyA()); context.ContextInterface(); context = new Context(new StrategyB()); context.ContextInterface(); context = new Context(new StrategyC()); context.ContextInterface(); } }}

        輸出結(jié)果

        ConcreteStrategyA AlgorithmInterface.ConcreteStrategyB.AlgorithmInterface.ConcreteStrategyC.AlgorithmInterface.

      4.  
        (文/百里海蕓)
        打賞
        免責(zé)聲明
        本文為百里海蕓推薦作品?作者: 百里海蕓。歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明原文出處:http://m.sneakeraddict.net/qzkb/show-106362.html 。本文僅代表作者個人觀點,本站未對其內(nèi)容進行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內(nèi)容,一經(jīng)發(fā)現(xiàn),立即刪除,作者需自行承擔(dān)相應(yīng)責(zé)任。涉及到版權(quán)或其他問題,請及時聯(lián)系我們郵件:weilaitui@qq.com。
         

        Copyright ? 2016 - 2023 - 企資網(wǎng) 48903.COM All Rights Reserved 粵公網(wǎng)安備 44030702000589號

        粵ICP備16078936號

        微信

        關(guān)注
        微信

        微信二維碼

        WAP二維碼

        客服

        聯(lián)系
        客服

        聯(lián)系客服:

        在線QQ: 303377504

        客服電話: 020-82301567

        E_mail郵箱: weilaitui@qq.com

        微信公眾號: weishitui

        客服001 客服002 客服003

        工作時間:

        周一至周五: 09:00 - 18:00

        反饋

        用戶
        反饋

        狠狠精品干练久久久无码中文字幕| 无码av免费毛片一区二区| 亚洲av中文无码乱人伦在线播放 | 成年午夜无码av片在线观看| 日本中文字幕一区二区有码在线| 中文字幕日韩欧美| 精品无码专区亚洲| 在线看片福利无码网址| 日韩无码系列综合区| 无码福利一区二区三区| 无码 免费 国产在线观看91| 国产成人无码区免费内射一片色欲| 国产成人A人亚洲精品无码| 中文字幕免费在线| 97碰碰碰人妻视频无码| 无码国产精品一区二区免费虚拟VR| 国产成年无码久久久久毛片| 日韩区欧美区中文字幕| 久久精品无码一区二区app| 成人午夜福利免费无码视频| 亚洲VA中文字幕不卡无码| 久久ZYZ资源站无码中文动漫| 熟妇女人妻丰满少妇中文字幕| 97免费人妻无码视频| 超清无码无卡中文字幕| 无码AV中文一区二区三区| JLZZJLZZ亚洲乱熟无码| 亚洲av永久无码制服河南实里| 国产区精品一区二区不卡中文| 18禁黄无码高潮喷水乱伦| 97无码人妻福利免费公开在线视频 | 亚洲日本中文字幕区| 久久激情亚洲精品无码?V| 少妇无码一区二区三区免费| 青娱乐在线国产中文字幕免費資訊| 无码少妇一区二区浪潮av| 国内精品人妻无码久久久影院| 亚洲午夜国产精品无码 | 国产福利电影一区二区三区久久老子无码午夜伦不 | 亚洲欧洲精品无码AV| 中文字幕不卡亚洲|