統(tǒng)計(jì)

          留言簿(1)

          DB

          Others

          QA

          Tech Website

          閱讀排行榜

          評(píng)論排行榜

          Visitor模式和Double Dispatch


          一、概念
            靜態(tài)分派(Static Dispatch),發(fā)生在編譯時(shí)期,分派是根據(jù)靜態(tài)類型信息發(fā)生的,方法重載就是靜態(tài)分派。
            動(dòng)態(tài)分派(Dynamic Dispatch),發(fā)生在運(yùn)行時(shí)期,動(dòng)態(tài)分派動(dòng)態(tài)地置換掉某個(gè)方法。面向?qū)ο蟮恼Z(yǔ)言用動(dòng)態(tài)分派實(shí)現(xiàn)多態(tài)性。
            Java語(yǔ)言支持靜態(tài)多分派和動(dòng)態(tài)的單分派,利用設(shè)計(jì)模式Java可以實(shí)現(xiàn)Double Dispatch,即訪問(wèn)者模式。

          二、Visitor Pattern
            目的:封裝一些施加于某種數(shù)據(jù)結(jié)構(gòu)元素之上的操作。
            UML圖:
           
             主要原理:“反傳球”,Element來(lái)Visitor之間二輪調(diào)用,調(diào)用過(guò)程中用sinlge dispatch確定類型


              

          posted on 2011-05-24 16:54 XXXXXX 閱讀(1635) 評(píng)論(1)  編輯  收藏 所屬分類: Programing

          評(píng)論

          # re: Visitor模式和Double Dispatch 2011-05-24 20:51 愛(ài)問(wèn)

          向樓主學(xué)習(xí)來(lái)了~  回復(fù)  更多評(píng)論   

          主站蜘蛛池模板: 丹巴县| 衡山县| 泸水县| 梁河县| 靖州| 建始县| 延长县| 滦平县| 平原县| 兴山县| 宿迁市| 新干县| 泊头市| 肃南| 临泽县| 万盛区| 纳雍县| 桂林市| 石狮市| 红河县| 扬中市| 阿克陶县| 天全县| 海盐县| 皋兰县| 莆田市| 仪陇县| 方山县| 泸州市| 阿荣旗| 蓬莱市| 惠来县| 吉隆县| 南和县| 安吉县| 凌源市| 丰县| 呼伦贝尔市| 聊城市| 绩溪县| 长春市|