<strike id="ca4is"><em id="ca4is"></em></strike>
  • <sup id="ca4is"></sup>
    • <s id="ca4is"><em id="ca4is"></em></s>
      <option id="ca4is"><cite id="ca4is"></cite></option>
    • 二維碼
      企資網

      掃一掃關注

      當前位置: 首頁 » 企資快訊 » 辦公 » 正文

      Java23種設計模式之抽象工廠模式

      放大字體  縮小字體 發布日期:2021-08-18 12:52:59    作者:王恒    瀏覽次數:29
      導讀

      模式的定義與特點抽象工廠(AbstractFactory)模式的定義:是一種為訪問類提供一個創建一組相關或相互依賴對象的接口,且訪問類無須指定所要產品的具體類就能得到同族的不同等級的產品的模式結構。抽象工廠模式是工

      模式的定義與特點

      抽象工廠(AbstractFactory)模式的定義:是一種為訪問類提供一個創建一組相關或相互依賴對象的接口,且訪問類無須指定所要產品的具體類就能得到同族的不同等級的產品的模式結構。

      抽象工廠模式是工廠方法模式的升級版本,工廠方法模式只生產一個等級的產品,而抽象工廠模式可生產多個等級的產品。

      使用抽象工廠模式一般要滿足以下條件。

      系統中有多個產品族,每個具體工廠創建同一族但屬于不同等級結構的產品。

      系統一次只可能消費其中某一族產品,即同族的產品一起使用。

      抽象工廠模式除了具有工廠方法模式的優點外,其他主要優點如下。

      可以在類的內部對產品族中相關聯的多等級產品共同管理,而不必專門引入多個新的類來進行管理。

      當需要產品族時,抽象工廠可以保證客戶端始終只使用同一個產品的產品組。

      抽象工廠增強了程序的可擴展性,當增加一個新的產品族時,不需要修改原代碼,滿足開閉原則。

      其缺點是:當產品族中需要增加一個新的產品時,所有的工廠類都需要進行修改。增加了系統的抽象性和理解難度。

      模式的結構與實現

      抽象工廠模式同工廠方法模式一樣,也是由抽象工廠、具體工廠、抽象產品和具體產品等 4 個要素構成,但抽象工廠中方法個數不同,抽象產品的個數也不同。現在我們來分析其基本結構和實現方法。

      1. 模式的結構

      抽象工廠模式的主要角色如下。

      抽象工廠(Abstract Factory):提供了創建產品的接口,她包含多個創建產品的方法 newProduct(),可以創建多個不同等級的產品。

      具體工廠(Concrete Factory):主要是實現抽象工廠中的多個抽象方法,完成具體產品的創建。

      抽象產品(Product):定義了產品的規范,描述了產品的主要特性和功能,抽象工廠模式有多個抽象產品。

      具體產品(ConcreteProduct):實現了抽象產品角色所定義的接口,由具體工廠來創建,她同具體工廠之間是多對一的關系。

      抽象工廠模式的結構圖如圖 2 所示。

      2. 模式的實現

      從圖 2 可以看出抽象工廠模式的結構同工廠方法模式的結構相似,不同的是其產品的種類不止一個,所以創建產品的方法也不止一個。下面給出抽象工廠和具體工廠的代碼。

        抽象工廠:提供了產品的生成方法。

        具體工廠:實現了產品的生成方法。

      來源:http://c.biancheng.net/view/1351.html

       
      (文/王恒)
      免責聲明
      本文僅代表作發布者:王恒個人觀點,本站未對其內容進行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內容,一經發現,立即刪除,需自行承擔相應責任。涉及到版權或其他問題,請及時聯系我們刪除處理郵件:weilaitui@qq.com。
       

      Copyright ? 2016 - 2025 - 企資網 48903.COM All Rights Reserved 粵公網安備 44030702000589號

      粵ICP備16078936號

      微信

      關注
      微信

      微信二維碼

      WAP二維碼

      客服

      聯系
      客服

      聯系客服:

      在線QQ: 303377504

      客服電話: 020-82301567

      E_mail郵箱: weilaitui@qq.com

      微信公眾號: weishitui

      客服001 客服002 客服003

      工作時間:

      周一至周五: 09:00 - 18:00

      反饋

      用戶
      反饋

      午夜久久久久久网站,99久久www免费,欧美日本日韩aⅴ在线视频,东京干手机福利视频
        <strike id="ca4is"><em id="ca4is"></em></strike>
      • <sup id="ca4is"></sup>
        • <s id="ca4is"><em id="ca4is"></em></s>
          <option id="ca4is"><cite id="ca4is"></cite></option>
        • 主站蜘蛛池模板: 波多野结衣新婚被邻居| 亚洲女初尝黑人巨高清| 三级黄在线观看| 精品香蕉伊思人在线观看| 成人黄色电影在线观看 | 最近免费中文字幕大全高清大全1 最近免费中文字幕大全高清大全1 | 欧美性生交xxxxx丝袜| 国产精品高清视亚洲一区二区| 亚洲精品中文字幕无码AV| 99re6在线| 欧美日韩亚洲人人夜夜澡| 国产精品免费视频播放器| 亚洲国产夜色在线观看| 亚洲天堂水蜜桃| 日韩欧美中文字幕在线视频| 国产女人在线观看| 久久久久亚洲av成人无码| 色网站在线免费观看| 成人午夜免费福利视频| 免费高清a级毛片在线播放| a级毛片免费高清视频| 污污网站在线播放| 国产精品偷伦视频免费观看了| 亚洲av永久无码精品三区在线| 国产玉足榨精视频在线观看| 日韩中文在线视频| 四虎国产精品永久在线播放| 一个人看的片免费高清大全| 波多野结衣在线观看一区| 国产精品成人va在线观看| 五月丁香六月综合缴清无码| 一个人免费视频观看在线www| 看一级毛片**直播在线| 在线天堂资源www在线中文| 亚洲国产精品毛片AV不卡在线| 欧美jizz40性欧美| 无码人妻精品一区二区三区蜜桃 | 九色国产在视频线精品视频| 隔壁女邻居在线观看| 怡红院国产免费| 亚洲欧美成人中文在线网站 |