午夜拍鍵驚奇
          子夜 編程 代碼與我同在
          posts - 48,comments - 118,trackbacks - 79

          一、概述

          原型模式屬于對(duì)象創(chuàng)建模式,通過(guò)給出一個(gè)原型對(duì)象來(lái)指明所要?jiǎng)?chuàng)建的對(duì)象類(lèi)型,然后用復(fù)制這個(gè)對(duì)象的方法創(chuàng)建出更多同類(lèi)型的對(duì)象。

           

          二、結(jié)構(gòu)

          1、簡(jiǎn)單形式

          o_prototype1.gif

          Client:提出創(chuàng)建對(duì)象的請(qǐng)求

          Prototype:抽象角色,給出所有具體原型類(lèi)所需的接口

          ConcretePrototype:被復(fù)制的對(duì)象


          2、登記形式

          o_prototype2.gif

          PrototypeManager:創(chuàng)建并記錄具體對(duì)象

           

          三、淺克隆與深克隆

          淺克隆:僅做refrence一級(jí)的克隆,refrence所指的對(duì)象不被克隆

          深克隆:將refrence所指的對(duì)象進(jìn)行遞歸克隆,需考慮克隆深度及循環(huán)克隆問(wèn)題


          四、動(dòng)機(jī)

          替換較復(fù)雜的等級(jí)結(jié)構(gòu)的工廠方法


          五、優(yōu)缺點(diǎn)

          1、允許動(dòng)態(tài)地增加或減少產(chǎn)品類(lèi),且對(duì)整個(gè)現(xiàn)有的產(chǎn)品結(jié)構(gòu)沒(méi)有影響

          2、提供簡(jiǎn)化的創(chuàng)建結(jié)構(gòu)

          3、具有動(dòng)態(tài)加載新功能的能力

          4、產(chǎn)品類(lèi)不需要有確定的等級(jí)結(jié)構(gòu)

          I、每一個(gè)類(lèi)必須配備一個(gè)克隆方法

          posted on 2005-08-05 10:54 ^ Mustang ^ 閱讀(926) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): Design Patterns
          主站蜘蛛池模板: 永修县| 嘉善县| 唐海县| 通海县| 惠东县| 淳安县| 福海县| 东丰县| 五河县| 兴业县| 邛崃市| 大城县| 吕梁市| 古交市| 南召县| 区。| 神木县| 逊克县| 土默特左旗| 旺苍县| 涟源市| 兴安县| 曲靖市| 长岛县| 济源市| 天气| 灵山县| 陵水| 庆云县| 金坛市| 志丹县| 明水县| 信阳市| 滦平县| 平乐县| 耒阳市| 庄浪县| 吉木萨尔县| 柳州市| 涟源市| 武隆县|