設計模式-適配器模式-創(chuàng)新互聯(lián)

abstract class Person
    {
        public string name;
        public Person(string _name)
        {
            name = _name;
        }
        public abstract void Say();
    }
    class EnglishPerson : Person
    {
        public EnglishPerson(string _name) : base(_name)
        {
        }

        public override void Say()
        {
            Console.WriteLine("i'm{0}",name);
        }
    }
        //被適配的對象
    class ChinesePerson : Person
    {
        public ChinesePerson(string _name) : base(_name)
        {
        }

        public override void Say()
        {
            Console.WriteLine("我是{0}", name);
        }
    }
    class JapanPerson : Person
    {
        public JapanPerson(string _name) : base(_name)
        {
        }

        public override void Say()
        {
            Console.WriteLine("私は{0}と申します", name);
        }
    }

        class TranslatorAdapter : Person
    {
        private ChinesePerson cp;
        public TranslatorAdapter(string _name) : base(_name)
        {
            cp = new ChinesePerson(name);
        }
        public override void Say()
        {
            cp.Say();
        }
    }

        //前端
        static void Main(string[] args)
        {
            Person p = new EnglishPerson("JOM");
            p.Say();

            Person p1 = new JapanPerson("アレクサンダー大");
            p1.Say();
            Console.ReadKey();

            //P1,P2來中國旅游,請了個中國翻譯
            Console.WriteLine("P1,P2來中國旅游,請了個中國翻譯");
            p = new TranslatorAdapter("JOM");
            p.Say();
            p1 = new TranslatorAdapter("アレクサンダー大");
            p1.Say();
            Console.ReadLine();
        }

總結(jié):轉(zhuǎn)換接口使不兼容的類可以一起工作,一般在軟件開發(fā)后期階段使用很多。
與代理模式差別在于
1、代理模式中被代理的類是不允許被客戶端訪問的,
代理類知識轉(zhuǎn)達被代理類的行為意圖,
設計時代理類和被代理是同一個接口。
假如被代理類可以直接被訪問,那么被代理類和代理類最終都是執(zhí)行的同一個方法。

創(chuàng)新互聯(lián)建站基于成都重慶香港及美國等地區(qū)分布式IDC機房數(shù)據(jù)中心構(gòu)建的電信大帶寬,聯(lián)通大帶寬,移動大帶寬,多線BGP大帶寬租用,是為眾多客戶提供專業(yè)服務器托管報價,主機托管價格性價比高,為金融證券行業(yè)德陽機房托管,ai人工智能服務器托管提供bgp線路100M獨享,G口帶寬及機柜租用的專業(yè)成都idc公司。

2、適配器模式是為了實現(xiàn):客戶的某個行為意圖希望轉(zhuǎn)變成另外一種行為意圖。
即轉(zhuǎn)變?yōu)楸贿m配角色的行為。
比如英文:i love you,中文:我愛你,
在中國老外說:i love you‘’,就需要適配器轉(zhuǎn)成我愛你,而‘’我愛你‘’就是被適配的對象

使用場景:
老系統(tǒng):add(param1,param2,param3)
新系統(tǒng):add(param1,param2,param3,param4)
新系統(tǒng)調(diào)用老系統(tǒng)的add,新系統(tǒng)此時就就需要加適配類了。
設計模式-適配器模式

創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國云服務器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡助力業(yè)務部署。公司持有工信部辦法的idc、isp許可證, 機房獨有T級流量清洗系統(tǒng)配攻擊溯源,準確進行流量調(diào)度,確保服務器高可用性。佳節(jié)活動現(xiàn)已開啟,新人活動云服務器買多久送多久。

網(wǎng)站名稱:設計模式-適配器模式-創(chuàng)新互聯(lián)
文章路徑:http://muchs.cn/article26/dpeccg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供App設計、企業(yè)網(wǎng)站制作微信公眾號、標簽優(yōu)化靜態(tài)網(wǎng)站、用戶體驗

廣告

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

h5響應式網(wǎng)站建設