隨筆-62  評論-29  文章-0  trackbacks-0
          UML
           組合和聚合

          class A {...}
           class B { A* a; .....}

          即類B包含類A的指針;

           而組合可表示為: 表示實實在在的擁有

          class A{...}
           class B{ A a; ...}

          即類B包含類A的對象。

          準確的UML類圖中用空心和實心菱形對聚合和組合進行了區分。

           

          聚合和組合的區別在于:聚合關系是“has-a”關系,組合關系是“contains-a”關系;聚合關系表示整體與部分的關系比較弱,而組合比較強;聚合關系中代表部分事物的對象與代表聚合事物的對象的生存期無關,一旦刪除了聚合對象不一定就刪除了代表部分事物的對象。組合中一旦刪除了組合對象,同時也就刪除了代表部分事物的對象。

          posted on 2008-12-01 21:59 閱讀(167) 評論(0)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 南雄市| 玉树县| 天全县| 晋州市| 收藏| 射阳县| 乐东| 台山市| 临桂县| 华亭县| 建德市| 双流县| 康马县| 麟游县| 丰宁| 吉木乃县| 台中市| 灵台县| 英德市| 郎溪县| 武安市| 工布江达县| 德格县| 潜江市| 桦川县| 繁峙县| 东兰县| 搜索| 自贡市| 运城市| 钟山县| 通渭县| 嘉定区| 封开县| 临夏市| 镇原县| 南郑县| 子洲县| 留坝县| 酒泉市| 同心县|