隨筆-72  評論-20  文章-0  trackbacks-1
          1.關聯(Association)
          類之間的關聯大多用來表示變量實例持有著對其他對象的引用。
          Phone擁有一個對Button的引用。
           
          2.聚合(Aggregation)
          聚合是關聯的一種特殊形式,它意味著一種整體/部分(whole/part)的關系。
          一個整體不能是它自己的一部分。 因此 ,實例不能形成聚合回路,一個單獨的對象不能夠成為它自己的聚合,兩個對象不能互相聚合,三個對象不能形成一個聚合環。
          下圖為實例間的非法聚合循環:
           
          3.組合(Composition)
          組合是一種特殊的聚合形式。
           
          UML對組合的定義:
          ①如同聚合,實例不能有循環。
          ②一個被所有者實例不能同時有兩個所有者。
          ③所有者負責被組合的對象的生命周期的管理。如果所有者被銷毀,被所有者也必須跟著一起被銷毀,如果所有者被復制,被所有者也必須跟著一起被復制。基于此點,可以用組合來描述深拷貝。
          下圖為非法組合:
           
          4.參考資料
          ⑴Robert Martin,UML for java programmers,2004
          posted on 2007-08-19 05:00 前方的路 閱讀(3371) 評論(0)  編輯  收藏 所屬分類: 結構與算法

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 黑水县| 永胜县| 新营市| 古交市| 隆回县| 诸城市| 彰化县| 成都市| 康定县| 南靖县| 山阴县| 定日县| 武城县| 寿宁县| 固安县| 静宁县| 德阳市| 阿坝| 东阳市| 双江| 扬州市| 西充县| 弥勒县| 盘锦市| 安溪县| 雷波县| 错那县| 怀来县| 绩溪县| 文成县| 胶南市| 武穴市| 湘乡市| 新化县| 都昌县| 罗源县| 东台市| 宣化县| 阜新市| 榆中县| 来安县|