原形設計模式,搞不懂

          今天下載了個設計模式看,prototype模式就兩頁紙,看過了也沒看出來它到底做什么,比較郁悶。我就不清楚那個copy方法到底做了什么?沒有copy方法不行嗎?


          定義:

          用原型實例指定創建對象的種類,并且通過拷貝這些原型創建新的對象. //通過拷貝創建新的對象跟通過繼承創建有什么區別呢?
          Prototype 模式允許一個對象再創建另外一個可定制的對象,根本無需知道任何如何創建的

          細節,工作原理是:通過將一個原型對象傳給那個要發動創建的對象,這個要發動創建的對象

          通過請求原型對象拷貝它們自己來實施創建。

          如何使用?

          因為Java 中的提供clone()方法來實現對象的克隆(具體了解 clone()按這里),所以

          Prototype 模式實現一下子變得很簡單.

          以勺子為例:

          public abstract class AbstractSpoon implements Cloneable
          {

              String spoonName;

              public void setSpoonName(String spoonName) {this.spoonName = spoonName;}

              public String getSpoonName() {return this.spoonName;}

              public Object clone()

               {

                  Object object = null;

                  try {
                      object = super.clone();

                  } catch (CloneNotSupportedException exception) {

                      System.err.println("AbstractSpoon is not Cloneable");

                  }

                  return object;
              }

          }

          有兩個具體實現(ConcretePrototype):

          public class SoupSpoon extends AbstractSpoon

          {

              public SoupSpoon()
               {

                  setSpoonName("Soup Spoon");

              }

          }

          public class SaladSpoon extends AbstractSpoon

          {

               public SaladSpoon()

               {
                   setSpoonName("Salad Spoon");

               }

          }

          調用 Prototype 模式很簡單:

          AbstractSpoon spoon = new SoupSpoon();

          AbstractSpoon spoon = new SaladSpoon();

          posted on 2007-11-29 16:23 liujg 閱讀(324) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          <2007年11月>
          28293031123
          45678910
          11121314151617
          18192021222324
          2526272829301
          2345678

          導航

          統計

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          相冊

          收藏夾

          boddiy

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 雷州市| 额敏县| 武城县| 华蓥市| 广平县| 松溪县| 台东市| 乌拉特中旗| 甘孜| 邵东县| 巫山县| 茶陵县| 卓资县| 昌江| 拜城县| 成都市| 治县。| 湖南省| 牟定县| 青海省| 无锡市| 霍城县| 双牌县| 奈曼旗| 新田县| 教育| 陆川县| 金坛市| 东丽区| 灵宝市| 富源县| 秦皇岛市| 绥宁县| 哈密市| 旅游| 庐江县| 兴国县| 美姑县| 汉源县| 渭源县| 盐池县|