<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    ivaneeo's blog

    自由的力量,自由的生活。

      BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
      669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks
    范例(Examples)
    本例從兩個classes開始,代表[人]的Person和代表[部門]的Department:
    class Person {
        Department _department;

        public Department getDepartment() {
           return _department;
        }
        public void setDepartment(Department arg) {
           _department = arg;
        }
    }

    class Department {
        private String _chargeCode;
        private Person _manager;

        public Department(Person manager) {
           _manager = manager;
        }

        public Person getManager() {
           return _manager;
        }
    ...

    如果客戶希望知道某人的經(jīng)理是誰,他必須先取得Department對象:
        manager = john.getDepartment().getManager();
    這樣的編碼就是對客戶揭露了Department工作原理,于是客戶知道:Department用以追蹤[經(jīng)理]這條信息。如果對客戶隱藏Department,可以減少耦合(coupling)。為了這一目的,我在Person中建立一個簡單的委托函數(shù):
        public Person getManager() {
           return _department.getManager();
        }
    現(xiàn)在,我得修改Person的所有客戶,讓它們改用新函數(shù):
        manager = john.getManager();
    只要完成了對Department所有函數(shù)的委托關(guān)系,并相應(yīng)修改了 Person的所有客戶,我就可以移除Person中的訪問函數(shù)個體Department()了。
    posted on 2005-08-31 13:35 ivaneeo 閱讀(196) 評論(0)  編輯  收藏 所屬分類: refactoring-從地獄中重生
    主站蜘蛛池模板: 95老司机免费福利| 美国免费高清一级毛片| 国产精品免费一区二区三区四区| 免费jjzz在在线播放国产| 亚洲精品一卡2卡3卡四卡乱码| 免费精品国产自产拍在线观看图片| 亚洲性天天干天天摸| 91人人区免费区人人| 亚洲精品永久www忘忧草| 99精品国产成人a∨免费看| 亚洲日本va午夜中文字幕一区| 免费视频一区二区| 亚洲自偷自拍另类图片二区| 中文字幕免费高清视频| 456亚洲人成影院在线观| 无码一区二区三区AV免费| 亚洲日本在线电影| 免费一看一级毛片| 中文字幕在线免费播放| 亚洲va无码专区国产乱码| 182tv免费视视频线路一二三| 亚洲婷婷综合色高清在线| 成全视频免费高清 | 亚洲AV无码成人精品区大在线 | 香蕉免费一区二区三区| 亚洲经典在线中文字幕| 好吊妞在线成人免费| 免费国产高清毛不卡片基地| 亚洲国产成人高清在线观看| 免费三级毛片电影片| 国产精品亚洲精品爽爽| 国产亚洲AV无码AV男人的天堂| 91视频免费网址| 亚洲a无码综合a国产av中文| 国产亚洲综合一区柠檬导航| 久久久久久精品成人免费图片| 亚洲熟女精品中文字幕| 亚洲永久精品ww47| 桃子视频在线观看高清免费完整| 色欲色香天天天综合网站免费| 久久久久久国产a免费观看不卡 |