• <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>

            S.l.e!ep.¢%

            像打了激速一樣,以四倍的速度運轉,開心的工作
            簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
            posts - 1098, comments - 335, trackbacks - 0, articles - 1
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            UML幾種難區分的類圖中的關系

            Posted on 2011-04-01 00:25 S.l.e!ep.¢% 閱讀(523) 評論(0)  編輯 收藏 引用 所屬分類: Design Pattern
            區分 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)
            ?? { ... }
            ? ?}?

            ?
            久久精品人成免费| 亚洲第一永久AV网站久久精品男人的天堂AV| 狠狠人妻久久久久久综合蜜桃| 亚洲国产精品无码久久SM| 老司机午夜网站国内精品久久久久久久久| 久久久中文字幕| 亚洲国产精品久久久久久| 美女写真久久影院| 久久99热这里只有精品国产| 国产精品久久久久乳精品爆| 国产成人精品久久亚洲| 精品视频久久久久| 亚洲欧美日韩久久精品| 欧美久久久久久| 77777亚洲午夜久久多喷| 久久精品国产亚洲AV蜜臀色欲| 国产成人久久精品一区二区三区 | 久久www免费人成精品香蕉| segui久久国产精品| 中文成人无码精品久久久不卡| 久久综合伊人77777| 亚洲精品乱码久久久久66| 国产精品久久久久影视不卡| 国产免费福利体检区久久 | 无码精品久久久久久人妻中字| 久久久久久久久久久久中文字幕| 久久精品国产一区二区三区日韩| 久久国产福利免费| 久久青青草视频| 久久九九青青国产精品| 久久精品久久久久观看99水蜜桃 | 久久精品9988| 亚洲欧美一区二区三区久久| 99久久人妻无码精品系列| 色偷偷88欧美精品久久久| 久久久亚洲欧洲日产国码二区| 国产香蕉97碰碰久久人人| 蜜臀久久99精品久久久久久小说 | 亚洲国产精品一区二区久久hs| 久久久精品国产亚洲成人满18免费网站 | 亚洲精品乱码久久久久久中文字幕 |