DANCE WITH JAVA

          開發(fā)出高質(zhì)量的系統(tǒng)

          常用鏈接

          統(tǒng)計(jì)

          積分與排名

          好友之家

          最新評(píng)論

          visitor模式概念------------------- visitor模式進(jìn)一步

          visitor模式理論及學(xué)術(shù)概念-------------------   visitor模式進(jìn)一步
          一,訪問者模式的角色:
          抽象訪問者:聲明一個(gè)或者多個(gè)訪問操作,形成所有的具體元素都要實(shí)現(xiàn)的接口
          具體訪問者:實(shí)現(xiàn)抽象訪問者所聲明的接口
          抽象節(jié)點(diǎn):聲明一個(gè)接受操作,接受一個(gè)訪問者對(duì)象作為參量
          具體節(jié)點(diǎn):實(shí)現(xiàn)了抽象元素所規(guī)定的接受操作
          結(jié)構(gòu)對(duì)象:遍歷結(jié)構(gòu)中的所有元素,類似List Set等
          二,在什么情況下應(yīng)當(dāng)使用訪問者模式
          訪問者模式應(yīng)該用在被訪問類結(jié)構(gòu)比較穩(wěn)定的時(shí)候,換言之系統(tǒng)很少出現(xiàn)增加新節(jié)點(diǎn)的
          情況。因?yàn)樵L問者模式對(duì)開-閉原則的支持并不好,訪問者模式允許在節(jié)點(diǎn)中加入方法,
          是傾斜的開閉原則,類似抽象工廠。
          三,訪問者模式的缺點(diǎn):
          1,增加節(jié)點(diǎn)困難
          2,破壞了封裝
          因?yàn)樵L問者模式的缺點(diǎn)和復(fù)雜性,很多設(shè)計(jì)師反對(duì)使用訪問者模式。個(gè)人感覺應(yīng)該在了解的
          情況下考慮衡量選擇。

          最后的部分:
          看完本文,如果你對(duì)visitor模式有更多的興趣,想了解更多請(qǐng)看如下幾篇文章。
          1,靜態(tài)分派,動(dòng)態(tài)分派,多分派,單分派 --------------   visitor模式準(zhǔn)備
          2,訪問差異類型的集合類 ------------------------   visitor模式入門
          3,visitor模式理論及學(xué)術(shù)概念-------------------   visitor模式進(jìn)一步(本文)
          4,重載overloading和覆寫overriding哪個(gè)更早執(zhí)行--   visitor幫助篇
          雖然排列順序是1,2,3,4 但是我個(gè)人建議的學(xué)習(xí)方式是2,1,3,4因?yàn)檫@個(gè)順序更方便一般人理解

           

          posted on 2006-12-20 01:26 dreamstone 閱讀(4608) 評(píng)論(0)  編輯  收藏 所屬分類: 設(shè)計(jì)模式

          主站蜘蛛池模板: 岑巩县| 密云县| 龙口市| 邮箱| 台北县| 汤阴县| 澄城县| 安阳市| 电白县| 格尔木市| 云和县| 禹城市| 宜州市| 榕江县| 新津县| 武胜县| 岳池县| 浦城县| 杭锦旗| 女性| 革吉县| 叙永县| 云和县| 米林县| 瓦房店市| 武川县| 重庆市| 德兴市| 陇西县| 奉新县| 若羌县| 兰西县| 崇左市| 静海县| 台州市| 黎川县| 桂东县| 梧州市| 巴楚县| 平凉市| 玉龙|