工廠模式(factory)構(gòu)建模式

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

          工廠模式
                定義:提供創(chuàng)建對(duì)象的接口
           為何使用:如果在一個(gè)項(xiàng)目中你需要new很多的實(shí)體,恰好這個(gè)實(shí)體new的過(guò)程很是復(fù)雜,而且有一天你的PM說(shuō)在這個(gè)new的工程中加一個(gè)級(jí)別的過(guò)濾吧。
                         你會(huì)突然發(fā)現(xiàn)你的工作量怎么那么大呢!如果當(dāng)時(shí)用到了工廠你就會(huì)發(fā)現(xiàn)原來(lái)加這個(gè)需求是這么的簡(jiǎn)單。而且在new的過(guò)程出現(xiàn)錯(cuò)誤的幾率將
                         大大的降低了。你的代碼也將會(huì)非常整潔。
                實(shí)例:(直接上代碼,發(fā)現(xiàn)弄圖片是如此的麻煩?。?nbsp;
                  //這只是一個(gè)小例子,會(huì)根據(jù)給出的顏色來(lái)給出具體的實(shí)例

                  public class WorkFactory {

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

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

                      public abstract class AbstractFactory {

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

           

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

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

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 文登市| 桐柏县| 澄迈县| 宜州市| 阿拉善左旗| 郑州市| 伊通| 赤峰市| 洛宁县| 宕昌县| 宁海县| 张家港市| 城口县| 滕州市| 南安市| 晋中市| 湟中县| 万源市| 江阴市| 沙雅县| 遂溪县| 新昌县| 巴马| 黄石市| 阳原县| 丹寨县| 浏阳市| 壶关县| 柳州市| 买车| 南澳县| 津南区| 青田县| 伽师县| 赞皇县| 吴江市| 周宁县| 松江区| 许昌县| 南安市| 乾安县|