<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智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                抽象工廠 如mac系統 mac軟件 win系統 win軟件 可以制作一個win工廠用來生產win軟件和win系統 可以制作一個mac工廠生產mac系統,mac軟件 <?php /* 抽象工廠:提供一個創建一系列相關或相互依賴對象的接口。 注意:這里和工廠方法的區別是:一系列,而工廠方法則是一個。 那么,我們是否就可以想到在接口create里再增加創建“一系列”對象的方法呢? */ interface people { function jiehun(); } class Oman implements people{ function jiehun() { echo '美女,我送你玫瑰和戒指!<br>'; } } class Iman implements people{ function jiehun() { echo '我偷偷喜歡你<br>'; } } class Owomen implements people { function jiehun() { echo '我要穿婚紗!<br>'; } } class Iwomen implements people { function jiehun() { echo '我好害羞哦!!<br>'; } } interface createMan { // 注意了,這里是本質區別所在,將對象的創建抽象成一個接口。 function createOpen(); //分為 內斂的和外向的 function createIntro(); //內向 } class FactoryMan implements createMan{ function createOpen() { return new Oman; } function createIntro() { return new Iman; } } class FactoryWomen implements createMan { function createOpen() { return new Owomen; } function createIntro() { return new Iwomen; } } class Client { // 抽象方法 function test() { $Factory = new FactoryMan; $man = $Factory->createOpen(); $man->jiehun(); $man = $Factory->createIntro(); $man->jiehun(); $Factory = new FactoryWomen; $man = $Factory->createOpen(); $man->jiehun(); $man = $Factory->createIntro(); $man->jiehun(); } } $f = new Client; $f->test(); 簡單工廠模式:用來生產同一等級結構中的任意產品。對與增加新的產品,無能為力 工廠模式 :用來生產同一等級結構中的固定產品。(支持增加任意產品) 抽象工廠 :用來生產不同產品族的全部產品。(對于增加新的產品,無能為力;支持增加產品族) 以上三種工廠 方法在等級結構和產品族這兩個方向上的支持程度不同。所以要根據情況考慮應該使用哪種方法簡單工廠模式: 工廠類負責創建的對象較少,客戶只知道傳入工廠類的參數,對于如何創建對象不關心。 工廠方法模式: 當一個類不知道它所必須創建對象的類或一個類希望由子類來指定它所創建的對象時,當類將創建對象的職責委托給多個幫助子類中得某一個,并且你希望將哪一個幫助子類是代理者這一信息局部化的時候,可以使用工廠方法模式。 抽象工廠模式: 一個系統不應當依賴于產品類實例何如被創建,組合和表達的細節,這對于所有形態的工廠模式都是重要的。這個系統有多于一個的產品族,而系統只消費其 中某一產品族。同屬于同一個產品族的產品是在一起使用的,這一約束必須在系統的設計中體現出來。系統提供一個產品類的庫,所有的產品以同樣的接口出現,從 而使客戶端不依賴于實現。 無論是簡單工廠模式、工廠模式還是抽象工廠模式,它們本質上都是將不變的部分提取出來,將可變的部分留作接口,以達到最大程度上的復用。究竟用哪種設計模式更適合,這要根據具體的業務需求來決定
                  <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>

                              哎呀哎呀视频在线观看