工廠模式(factory)構建模式

                寫東西的能力有限,希望可以諒解。

          工廠模式
                定義:提供創建對象的接口
           為何使用:如果在一個項目中你需要new很多的實體,恰好這個實體new的過程很是復雜,而且有一天你的PM說在這個new的工程中加一個級別的過濾吧。
                         你會突然發現你的工作量怎么那么大呢!如果當時用到了工廠你就會發現原來加這個需求是這么的簡單。而且在new的過程出現錯誤的幾率將
                         大大的降低了。你的代碼也將會非常整潔。
                實例:(直接上代碼,發現弄圖片是如此的麻煩!) 
                  //這只是一個小例子,會根據給出的顏色來給出具體的實例

                  public class WorkFactory {

                   public static Work getWork(String color){
                    return color.equals("black")?new BlackWork():new WhiteWork();
                   }
                  }

          抽象工廠
                 定義:如果工廠是生產實例的,那抽象工廠就是一個整個工廠的架構沒有具體的實現
            為何使用:比如人家想用你的工廠,但是你又不想讓人家看到你工廠里面具體的工作,并且你還要告訴他你工廠可能干什么。這時候你就可以給他看你的抽象的工廠
                          而不是真正再生產的工廠了。而且利于擴展,比如又讓你建一個工廠和上一個在實現上有區別但是還是那幾個方法。這樣你利用抽象工廠很快就可以搭建
                          這另一個工廠了。
                  實例:        

                      public abstract class AbstractFactory {

                       public abstract Work getWork() throws Exception;
                       public abstract Study getStudy() throws Exception;
                      }

           

          posted on 2012-03-01 11:45 海峰 閱讀(134) 評論(0)  編輯  收藏 所屬分類: 設計模式

          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導航

          統計

          常用鏈接

          留言簿

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 石家庄市| 双柏县| 寻甸| 开鲁县| 泽库县| 布尔津县| 巫山县| 汤原县| 来安县| 台湾省| 邹城市| 华坪县| 九寨沟县| 松溪县| 公安县| 蓬安县| 台山市| 政和县| 济阳县| 菏泽市| 吉安县| 黑龙江省| 客服| 锦屏县| 泰安市| 澎湖县| 神农架林区| 江川县| 霍林郭勒市| 通河县| 正宁县| 荥阳市| 绿春县| 玉屏| 漯河市| 陆丰市| 平远县| 九寨沟县| 迭部县| 中卫市| 贵定县|