統(tǒng)計

          留言簿(1)

          DB

          Others

          QA

          Tech Website

          閱讀排行榜

          評論排行榜

          Visitor模式和Double Dispatch


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

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


              

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

          評論

          # re: Visitor模式和Double Dispatch 2011-05-24 20:51 愛問

          向樓主學習來了~  回復  更多評論   

          主站蜘蛛池模板: 长沙市| 牡丹江市| 南平市| 平山县| 进贤县| 台安县| 中卫市| 平武县| 方城县| 调兵山市| 综艺| 大竹县| 安丘市| 贺州市| 罗城| 永兴县| 璧山县| 安新县| 衢州市| 盐津县| 阿合奇县| 赤峰市| 和龙市| 昌邑市| 灌南县| 宝丰县| 修水县| 辉南县| 镇沅| 乌审旗| 庆阳市| 兴文县| 镇赉县| 凤翔县| 息烽县| 铜鼓县| 唐海县| 花垣县| 吐鲁番市| 固原市| 沁阳市|