<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                曾經有一副小米耳機擺在我的面前,但是我沒有去好好珍惜,直到她掉到我的水杯里我才后悔莫及,塵世間最痛苦的事莫過于此,如果上天再給我一次機會,我會對你說:我應該買個防水的耳機。話說昨天晚上回到宿舍,禁不住美食的誘惑,大晚上的,咱不能吃,看看也行啊,于是,百度搜索“舌尖上的中國”,看看看著,感覺口渴,于是蹭蹭蹭趕緊找水喝,喝水的時候還不忘把手機拿在手里,耳機插在耳朵里,說時遲,那時快,我的耳機涼快的洗了個澡,可能是因為天氣比較熱,耳機也想涼快涼快。 我去市面上沒有找到2.5的耳機,基本上是3.5接口,沒辦法我只好買了個3.5接口的耳機,老板告訴你:“我給你一個適配器”這不問題就解決了。3.5的接口的耳機在我手機上本來是沒法使用的,因為它沒有按照2.5接口的設計,而現在我又想使用這幅耳機,于是乎有了“適配器(Adapter)”這個一個東西出來了。Adapter模式的定義:把一個類的接口變換成客戶端所期待的另外一種接口,使得原本由于接口不兼容而不能再一起工作的那些類可以一起工作。我的耳機插口是2,5的,倒霉熊孩子,買錯了,買了一個3.5的,怎么辦呢?這個時候需要一個“適配器”來幫助我解決問題。今天的設計模式就從我們的耳機開始說起---適配器模式。首先來看看我們適配器的結構圖: ? ? ? ? ? ??![](https://box.kancloud.cn/2015-12-30_5683743c670df.jpg) 對上面的類圖進行一些闡述: 目標接口(Target):客戶所期待的接口。目標可以是具體的或抽象的類,也可以是接口。 需要適配的類(Adaptee):需要適配的類或適配者類。 適配器(Adapter):通過包裝一個需要適配的對象,把原接口轉換成目標接口。 接下來,以上面的例子,看看我們的代碼實現: ? ? ? ? ? ? ~~~ using?System;?? using?System.Collections.Generic;?? using?System.Linq;?? using?System.Text;?? using?System.Threading.Tasks;?? ?? namespace?ConsoleApplication1?? {?? ????class?Program?? ????{?? ????????static?void?Main(string[]?args)?? ????????{?? ????????????Target?target?=?new?Adapter();?? ????????????target.Provide2_5();?? ????????????Console.Read();?? ????????}?? ????}?? ????//Targe?這里相當于2.5插孔的耳機?? ????class?Target?? ????{?? ??????public?virtual?void??Provide2_5()?? ??????{?? ??????????Console.WriteLine("我是2.5的接口");?? ??????}?? ?????}?? ?? ?? ?? ????//Adaptee?這里相當于3.5插孔的耳機?? ????class?Adaptee?? ????{?? ???????public?virtual?void??Provide3_5()?? ??????{?? ????????Console.WriteLine("我是3.5的接口");?? ??????}?? ????}?? ?? ?? ????//Adapter?這里相當于轉換器?? ????class?Adapter:Target?? ????{?? ???????private?Adaptee?adaptee?=?new?Adaptee();?? ???????public?override?void?Provide2_5()?? ??????{?? ???????????adaptee.Provide3_5();?? ??????}?? ????}?? }?? ~~~ 編程如人生,合適的才是最好的,鷹擊長空,魚翔潛底,大自然因它們而變得豐富多彩,只因它們找到了適合自己的位置。人類也是如此,找到屬于自己的位置,你的人生才會充滿意義。? ?
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看