<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-從地獄中重生
    主站蜘蛛池模板: 亚洲人成www在线播放| 污污免费在线观看| 国产免费人成视频在线观看| 免费大片av手机看片| 亚洲精品无码av人在线观看| 精品无码无人网站免费视频| 亚洲狠狠婷婷综合久久| 一本色道久久综合亚洲精品高清| 久久中文字幕免费视频| 亚洲6080yy久久无码产自国产| 亚洲色欲色欲www在线丝| 波多野结衣在线免费视频| free哆拍拍免费永久视频| 亚洲成人动漫在线观看| 亚洲精品黄色视频在线观看免费资源 | 在线观看成人免费视频| 免费福利资源站在线视频| 在线观看亚洲人成网站| 大香人蕉免费视频75| 色www永久免费网站| 亚洲av日韩aⅴ无码色老头| 久久久影院亚洲精品| 四虎国产精品免费久久影院| 99久久免费看国产精品| 成人免费视频一区二区| 亚洲人成伊人成综合网久久| 国产AⅤ无码专区亚洲AV| 热99re久久免费视精品频软件| 午夜视频在线免费观看| 九一在线完整视频免费观看| 亚洲精品456人成在线| 亚洲日本在线观看| 在线观看国产区亚洲一区成人| 在线免费视频一区| 国产妇乱子伦视频免费| 99精品免费视频| 一级毛片一级毛片免费毛片| 亚洲爆乳无码专区www| 亚洲成综合人影院在院播放| 亚洲精品国偷自产在线| 亚洲精品国产高清嫩草影院|