<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 工廠模式 [TOC] ## 導學 >[info] 工廠模式,顧名思義就是類比工廠,用于生產的意思。在Java中這樣的一個工廠它生產的產品是對象。 ## 工廠模式的特點 1. 工廠模式用于隱藏創建對象的細節; 2. 工廠模式核心:工廠類(Fcatory); 3. 工廠模式可細分為簡單工廠、工廠方法與抽象工廠; 工廠模式主要是通過一個“中間人”來簡化對象創建的過程,這個中間人就是工廠類,工廠類可根據使用行為細分為簡單工廠、工廠方法和抽象工廠,其目的都是為了隱藏創建類的細節,但設計理念有所不同。 ## 工廠模式的實現 **簡單工廠模式** ~~~ public interface Product { public void desc(); } public class MobilePhone implements Product { @Override public void desc() { System.out.println("生產手機"); } } public class Pad implements Product { @Override public void desc() { System.out.println("生產平板"); } } public class Computer implements Product { @Override public void desc() { System.out.println("生產電腦"); } } public class Factory { public static Product produce(String pName) { if("phone".equals(pName)) { return new MobilePhone(); } else if("computer".equals(pName)) { return new Computer(); } else if("pad".equals(pName)) { return new Pad(); } else { return null; } } } public class Demo { public static void main(String[] args) { Product pdt = Factory.produce("pad"); pdt.desc(); } } ~~~ **工廠模式** 工廠方法模式,是對普通工廠方法模式的改進,在普通工廠方法模式中,如果傳遞的字符串出錯,則不能正確創建對象,而多個工廠方法模式是提供多個工廠方法,分別創建對象 ~~~ public interface Product { public void desc(); } public class MobilePhone implements Product { @Override public void desc() { System.out.println("生產手機"); } } public class Pad implements Product { @Override public void desc() { System.out.println("生產平板"); } } public class Computer implements Product { @Override public void desc() { System.out.println("生產電腦"); } } public class Factory { //手機生產線 public static Product mobilePhone() { return new MobilePhone(); } //電腦生產線 public static Product computer() { return new Computer(); } //平板生產線 public static Product pad() { return new Pad(); } } public class Demo { public static void main(String[] args) { Product pdt = Factory.computer(); pdt.desc(); } } ~~~ **抽象工廠模式** 自學完成
                  <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>

                              哎呀哎呀视频在线观看