• <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++編程失樂園

            致力于解決論壇的不足,探討C++的原理

            UML隨筆 之 類圖描述

            A.??????? 類圖

            類圖 用矩形框 表示, 性和操作分 列在分格中,若不需要表 達(dá)詳細(xì) 信息 ,分格可以省略。

            類間關(guān)

            類圖 中,除了需要描述 單獨 的名 性和操作外,我 們還 需要描述 聯(lián) 系,因 為沒 單獨 存在的, 它們 通常需要和 類協(xié) 作, 創(chuàng) 造比 單獨 工作更大的 語義 。在UML 類圖 中, 關(guān) 系用 框之 連線來 表示, 連線 上和 連線 頭處 的不同修 符表示不同的 關(guān) 系。 關(guān) 系有 承(泛化)、 關(guān)聯(lián) 、聚合和 合。

            1.??????? 承:指的是一 個類 稱為 承另外的一 個類 稱為 )的功能, 增加 自己的新功能的能力, 承是 類與類 最常 關(guān) 系。 類圖 承的表示方法是 拉出一 條閉 合的、 單鍵頭 (或三角形)的 實線 指向基 。例如, 3.2 出了MFC中CObject 和菜 單類 CMenu的 關(guān) 系。

            承在C++中呈 現(xiàn)為

            class B { }
            class A : public B{ }

            2.??????? 關(guān)聯(lián) :指的是模型元素之 的一 種語義聯(lián) 系,是 的一 很弱的 聯(lián) 系。 關(guān)聯(lián) 可以有方向,可以是 關(guān)聯(lián) ,也可以是 關(guān)聯(lián) 。可以 給關(guān)聯(lián) 加上 關(guān)聯(lián) 描述 關(guān)聯(lián) 的作用。 關(guān)聯(lián)兩 端的 也可以以某 角色 參與關(guān)聯(lián) ,角色可以具有多重性,表示可以有多少 個對 參與關(guān)聯(lián) 。可以通 過關(guān)聯(lián)類進(jìn) 一步描述 關(guān)聯(lián) 性、操作以及其他信息。 關(guān)聯(lián)類 條虛線與關(guān)聯(lián)連 接。 關(guān)聯(lián) 可以加上一些 束,以加強 關(guān)聯(lián) 的含
             
            關(guān)聯(lián) C++中呈 現(xiàn)為

            class A{...}
            class B{ ...}
            A::Function1(B &b) //或A::Function1(B b) //或A::Function1(B *b)

            即一 個類 另一 個類 方法的 參數(shù)

            3.??????? 聚合:指的是整體 部分的 關(guān) 系。通常在定 整體 后,再去分析 這個 整體 結(jié)構(gòu) 而找出一些 整體 就形成了聚合 關(guān) 系。例如一 航母 編隊 包括海空母 驅(qū)護(hù)艦 艇、 艦載飛 機及核 力攻 潛艇等。需求描述中“包含”、“ ”、“分 …部分”等 常意味著聚合 關(guān) 系。

            4.??????? 合:也表示 整體和部分的 關(guān) 系,但是 關(guān) 系中部分和整體具有 統(tǒng) 一的生存期。一旦整體 象不存在,部分 象也 不存在。部分 整體 象之 具有共生死的 關(guān) 系。

            聚合和 合的 區(qū)別 在于:聚合 關(guān) 系是“has-a” 關(guān) 系, 關(guān) 系是“contains-a” 關(guān) 系;聚合 關(guān) 系表示整體 部分的 關(guān) 系比 弱,而 合比 強;聚合 關(guān) 系中代表部分事物的 代表聚合事物的 象的生存期無 關(guān) ,一旦 除了聚合 象不一定就 除了代表部分事物的 象。 合中一旦 除了 象,同 也就 除了代表部分事物的 象。

            C++ 言中, 從實現(xiàn) 的角度 ,聚合可以表示

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

            B包含 A的指

            合可表示

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

            B包含 A的 象。

            準(zhǔn)確的UML 類圖 中用空心和 心菱形 聚合和 進(jìn) 行了 區(qū) 分。

            B.???????

            圖顯 示某 象和 象之 關(guān) 系,是 類圖 化,一 個對 可看成一 個類圖 的示例(example), 表示的是 例而不是 真實 。由于 象存在生命周期,因此 只能在系 統(tǒng) 某一 時間 段存在。

            無新的表示法(除了 象名下要加下 劃線 以外), 與類圖 中的表示法一 ,可以 認(rèn)為 ,只有 象而無 類圖 就是一 ”。
             
             
            中, 象名可以有三 表示形式:

            1) 象名:

            2):

            3) 象名

            ”看作 類圖 ,把 愛國 ”看作 ,很明 就是 類圖 的一 example而已。

            posted on 2007-01-21 12:36 木木頭 閱讀(874) 評論(0)  編輯 收藏 引用 所屬分類: UML工程

            導(dǎo)航

            <2007年1月>
            31123456
            78910111213
            14151617181920
            21222324252627
            28293031123
            45678910

            統(tǒng)計

            常用鏈接

            留言簿(3)

            隨筆分類(29)

            搜索

            最新隨筆

            最新評論

            蜜臀av性久久久久蜜臀aⅴ麻豆| 久久午夜无码鲁丝片午夜精品| 一本色道久久88—综合亚洲精品| 狠狠色综合网站久久久久久久高清 | 久久精品免费一区二区三区| 久久亚洲国产午夜精品理论片| 热久久国产精品| 亚洲七七久久精品中文国产 | 久久AV高清无码| 色综合合久久天天给综看| 国内精品人妻无码久久久影院导航 | 日日躁夜夜躁狠狠久久AV| 久久99国产亚洲高清观看首页| 久久婷婷五月综合色99啪ak | 国产AⅤ精品一区二区三区久久| 性做久久久久久免费观看| 99国产欧美精品久久久蜜芽| 亚洲人成网站999久久久综合 | 丁香色欲久久久久久综合网| 久久国产高清一区二区三区| 久久久国产精品亚洲一区| 久久亚洲中文字幕精品一区| 91久久九九无码成人网站| 潮喷大喷水系列无码久久精品| 伊人久久大香线蕉综合热线| 91麻精品国产91久久久久| www性久久久com| 狠色狠色狠狠色综合久久| 无码人妻久久一区二区三区| 久久AV无码精品人妻糸列| 久久久久久国产精品美女| 久久综合一区二区无码| 亚洲国产精品成人AV无码久久综合影院 | 国产成人综合久久精品尤物| 国产精品久久亚洲不卡动漫| 久久青青草原亚洲av无码app| 久久人人添人人爽添人人片牛牛| 色狠狠久久综合网| 一级做a爰片久久毛片免费陪| 久久影视国产亚洲| 国内精品伊人久久久影院|