欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

設計模式-策略模式

public abstract class baseClass
{
        public abstract double getResult(double num1,double num2);
}
public class A:baseClass
{
        public overrid double getResult(double num1,double num2)
        {
                return num1+num2;
        }
}
public class B:baseClass
{
        public overrid double getResult(double num1,double num2)
        {
                return num1-num2;
        }
}

public class Context
{
       baseClass bc{get;set;}
       public Context(baseClass _bc)
             {
                         bc=_bc;
             }
             public double getResult(double num1,double num2)
             {
                         return bc.getResult(num1,num2);
             }
}

前端:
A a=new A();
Context c=new Context(a);
c.getResult(300,200);

設計模式-策略模式

我們提供的服務有:做網站、成都網站設計、微信公眾號開發(fā)、網站優(yōu)化、網站認證、連山ssl等。為上千多家企事業(yè)單位解決了網站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的連山網站制作公司

總結:策略模式需要前端傳入具體的業(yè)務對象給Context配置類,然后通過配置類的getResult獲取所需;
優(yōu)點:各個業(yè)務對象可以互不影響相互替換,
缺點:前端需要依賴的對象太多了。

策略模式和工廠模式類似,業(yè)務對象都是一模一樣,只不過工廠是生產對象, 策略配置類是傳入對象。

工廠和策略結合后比較好:

public class Context
{
       baseClass bc{get;set;}
       public Context(string type)
             {
                         swicth(type)
                         {
                            case “1”:bc=new A();
                                case “2”:bc=new B();
                         }
             }
             public double getResult(double num1,double num2)
             {
                         return bc.getResult(num1,num2);
             }
}
前端:
Context c=new Context(1“”);
c.getResult(300,200);

網站欄目:設計模式-策略模式
網頁路徑:http://www.chinadenli.net/article32/gpcesc.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)移動網站建設品牌網站建設網站策劃響應式網站定制網站

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網頁設計公司