• <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.¢%

            像打了激速一樣,以四倍的速度運(yùn)轉(zhuǎn),開心的工作
            簡(jiǎn)單、開放、平等的公司文化;尊重個(gè)性、自由與個(gè)人價(jià)值;
            posts - 1098, comments - 335, trackbacks - 0, articles - 1
              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
            區(qū)分 UML 類圖中的幾種關(guān)系

            ?? UML 類圖中的 ”關(guān)聯(lián)關(guān)系(association) “、”聚合關(guān)系(aggregation) “、”合成關(guān)系 (compostion)“ 和”依賴關(guān)系 (dependency)“ 不是很容易區(qū)分清楚,《UML distilled》 對(duì)這幾個(gè)關(guān)系也沒(méi)有解釋的特別清楚。近日翻閱《Java 與模式》,發(fā)現(xiàn)其中對(duì)這些關(guān)系有較為清晰的描述,特摘錄如下:

            ?關(guān)聯(lián)關(guān)系 (association):

            ?? (1)關(guān)聯(lián)關(guān)系是類與類之間的聯(lián)結(jié),它使一個(gè)類知道另一個(gè)類的屬性和方法。
            ? ?(2)關(guān)聯(lián)可以是雙向的,也可以是單向的。雙向的關(guān)聯(lián)可以有兩個(gè)箭頭或者沒(méi)有箭頭,單向的關(guān)聯(lián)有一個(gè)箭頭。
            ? ?(3)在 Java 或 c++ 中,關(guān)聯(lián)關(guān)系是通過(guò)使用成員變量來(lái)實(shí)現(xiàn)的。 class 徒弟
            ? ?{ };
            ? ?class 唐僧
            ? ? {
            ? ? protected:
            ? ?list<徒弟> tdlist;
            ? ? };?
            ???

            ?聚合關(guān)系 (aggregation):

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

            合成關(guān)系 (composition):

            ?? 1、合成關(guān)系是關(guān)聯(lián)關(guān)系的一種,是比聚合關(guān)系還要強(qiáng)的關(guān)系。
            ?? 2、它要求普通的聚合關(guān)系中代表整體的對(duì)象負(fù)責(zé)代表部分的對(duì)象的生命周期。
            ?? 1 class 肢
            ?? {
            ?? };
            ?? class 人
            ?? {
            ?? protected:
            ?? 肢 limb[4];
            ?? };

            依賴關(guān)系 (dependency):

            ? ?1、依賴關(guān)系也是類與類之間的聯(lián)結(jié)
            ?? 2、依賴總是單向的。
            ? ?3、依賴關(guān)系在 Java 或 C++ 語(yǔ)言中體現(xiàn)為局部變量、方法的參數(shù)或者對(duì)靜態(tài)方法的調(diào)用。

            顯示代碼打印

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

            ?
            亚洲а∨天堂久久精品9966| 狠狠色婷婷久久一区二区三区| 99久久国产主播综合精品 | 久久久免费精品re6| 99久久精品国产麻豆| 青青热久久国产久精品 | 成人免费网站久久久| 久久精品国产清自在天天线| 久久精品国产免费观看三人同眠| 亚洲综合日韩久久成人AV| 久久综合久久综合久久综合| 亚洲人成无码久久电影网站| 老司机国内精品久久久久| 久久午夜无码鲁丝片秋霞| 久久精品国产亚洲欧美| 亚洲中文字幕无码久久2017| 国产综合精品久久亚洲| 久久国产精品成人片免费| 久久久久一本毛久久久| 国产一久久香蕉国产线看观看| 一级女性全黄久久生活片免费 | 久久精品视频一| 精品久久久久中文字| www.久久热| 99久久精品国内| 精品久久久久久亚洲精品 | 中文精品久久久久国产网址| 香蕉久久夜色精品升级完成| 思思久久99热免费精品6| 国产高潮久久免费观看| 麻豆精品久久精品色综合| 国产∨亚洲V天堂无码久久久| 久久水蜜桃亚洲av无码精品麻豆| 欧美久久久久久| 久久精品aⅴ无码中文字字幕不卡| 午夜精品久久久久成人| 伊色综合久久之综合久久| 久久人人爽人人爽人人片AV不 | 国产成人久久777777| 99久久综合狠狠综合久久| 国产午夜精品久久久久九九电影|