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

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

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

    ivaneeo's blog

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

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      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;
        }
    ...

    如果客戶希望知道某人的經理是誰,他必須先取得Department對象:
        manager = john.getDepartment().getManager();
    這樣的編碼就是對客戶揭露了Department工作原理,于是客戶知道:Department用以追蹤[經理]這條信息。如果對客戶隱藏Department,可以減少耦合(coupling)。為了這一目的,我在Person中建立一個簡單的委托函數:
        public Person getManager() {
           return _department.getManager();
        }
    現在,我得修改Person的所有客戶,讓它們改用新函數:
        manager = john.getManager();
    只要完成了對Department所有函數的委托關系,并相應修改了 Person的所有客戶,我就可以移除Person中的訪問函數個體Department()了。
    posted on 2005-08-31 13:35 ivaneeo 閱讀(196) 評論(0)  編輯  收藏 所屬分類: refactoring-從地獄中重生
    主站蜘蛛池模板: 久久久久久国产a免费观看不卡| 国产亚洲精品影视在线| 国产视频精品免费视频| 亚洲精品无码久久久| 无码人妻一区二区三区免费视频 | 老司机午夜性生免费福利| 国产成人A在线观看视频免费| 91亚洲精品自在在线观看| 亚洲免费观看在线视频| 亚洲精品视频观看| 性做久久久久久久免费看| 亚洲无吗在线视频| 国产成人免费全部网站| 四虎影视久久久免费| 成人午夜亚洲精品无码网站| 久久精品成人免费网站| 久久国产亚洲精品无码| 国内精自视频品线六区免费| 亚洲日韩中文字幕| 日韩免费高清视频| 中出五十路免费视频| 久久亚洲AV成人无码电影| 国产成人免费网站| 免费大片av手机看片| 亚洲av无码专区国产乱码在线观看| 4444www免费看| 亚洲成a∨人片在无码2023| 亚洲日韩VA无码中文字幕| 无码囯产精品一区二区免费| 亚洲美女精品视频| 四虎影在线永久免费四虎地址8848aa| 一级视频在线免费观看| 99亚洲精品高清一二区| 日韩一区二区在线免费观看| 亚洲国产免费综合| 亚洲精品美女久久久久| 亚洲国产精品综合久久网络| 久久久久久毛片免费播放| 国内成人精品亚洲日本语音| 亚洲产国偷V产偷V自拍色戒| 成人在线免费观看|