• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

               C++ 技術中心

               :: 首頁 :: 聯系 ::  :: 管理
              160 Posts :: 0 Stories :: 87 Comments :: 0 Trackbacks

            公告

            鄭重聲明:本BLOG所發表的原創文章,作者保留一切權利。必須經過作者本人同意后方可轉載,并注名作者(天空)和出處(CppBlog.com)。作者Email:coder@luckcoder.com

            留言簿(27)

            搜索

            •  

            最新隨筆

            最新評論

            評論排行榜

            區分 UML 類圖中的幾種關系

               UML 類圖中的 ”關聯關系(association) “、”聚合關系(aggregation) “、”合成關系 (compostion)“ 和”依賴關系 (dependency)“ 不是很容易區分清楚,《UML distilled》 對這幾個關系也沒有解釋的特別清楚。近日翻閱《Java 與模式》,發現其中對這些關系有較為清晰的描述,特摘錄如下:

             關聯關系 (association):

               (1)關聯關系是類與類之間的聯結,它使一個類知道另一個類的屬性和方法。
               (2)關聯可以是雙向的,也可以是單向的。雙向的關聯可以有兩個箭頭或者沒有箭頭,單向的關聯有一個箭頭。
               (3)在 Java 或 c++ 中,關聯關系是通過使用成員變量來實現的。 class 徒弟
               { };
               class 唐僧
                {
                protected:
               list<徒弟> tdlist;
                }; 
               

             聚合關系 (aggregation):

               1、聚合關系是關聯關系的一種,是強的關聯關系。
               2、聚合是整體和部分之間的關系,例如汽車由引擎、輪胎以及其它零件組成。
               3、聚合關系也是通過成員變量來實現的。但是,關聯關系所涉及的兩個類處在同一個層次上,而聚合關系中,兩個類處于不同的層次上,一個代表整體,一個代表部分。
               4、關聯與聚合僅僅從 Java 或 C++ 語法上是無法分辨的,必須考察所涉及的類之間的邏輯關系。
               class 引擎
               {
               };
               class 輪胎
               {
               };
               class 汽車
               {
               protected:
               引擎 engine;
               輪胎 tyre[4];
               }; 
              

            合成關系 (composition):

               1、合成關系是關聯關系的一種,是比聚合關系還要強的關系。
               2、它要求普通的聚合關系中代表整體的對象負責代表部分的對象的生命周期。
               1 class 肢
               {
               };
               class 人
               {
               protected:
               肢 limb[4];
               };

            依賴關系 (dependency):

               1、依賴關系也是類與類之間的聯結
               2、依賴總是單向的。
               3、依賴關系在 Java 或 C++ 語言中體現為局部變量、方法的參數或者對靜態方法的調用。

            顯示代碼打印

               public class Person
               {
               public void buy(Car car)
               { ... }
               } 

             
            posted on 2011-03-31 11:42 C++技術中心 閱讀(2050) 評論(0)  編輯 收藏 引用 所屬分類: UML
            久久久无码一区二区三区| 99久久综合狠狠综合久久| 久久夜色精品国产www| 久久亚洲AV无码西西人体| 久久精品无码一区二区三区日韩 | 人妻少妇久久中文字幕一区二区| 国产午夜福利精品久久| 国产99久久九九精品无码| 久久精品无码一区二区三区日韩| 色播久久人人爽人人爽人人片aV| 久久伊人精品一区二区三区| 国产91色综合久久免费分享| 精品免费久久久久国产一区| 久久无码高潮喷水| 一本一道久久精品综合| 性欧美大战久久久久久久| 人人狠狠综合久久88成人| 国产精品九九久久免费视频 | 99热热久久这里只有精品68| 人妻无码精品久久亚瑟影视| 久久久久久久尹人综合网亚洲 | 久久天堂AV综合合色蜜桃网| 久久久人妻精品无码一区| 99久久精品国产麻豆| 一级做a爰片久久毛片看看| 999久久久免费国产精品播放| 亚洲中文字幕无码久久2017| 久久久免费观成人影院| 97久久精品人人澡人人爽| 久久精品人人做人人爽97| 无码任你躁久久久久久老妇App| 国产亚州精品女人久久久久久 | 久久精品九九亚洲精品| 欧美日韩精品久久久免费观看| 国内精品久久久久久久久| 久久精品视频免费| 久久99精品国产麻豆宅宅 | yy6080久久| 中文精品久久久久人妻不卡| 亚洲另类欧美综合久久图片区| 欧美久久久久久午夜精品|