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

            woaidongmao

            文章均收錄自他人博客,但不喜標題前加-[轉貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數據加載中……

            用Visio畫UML圖 類結構圖(進階篇)

            上一篇文章中說明了類結構圖的基本畫法。要真正要完成實用的類圖,還要有許多工作要做。

            類之間的關系

            繼承關系

            繼承關系是最容易理解的關系。畫成圖的話就像下面這樣。面向對象的說法就是is-a關系。也就是說Class2 is a Class1。在C++中我們說Class2是Class1的派生類,或者說Class1是Class2的基類。clip_image002

            聚集和組成

            從容易理解的關系說起.經常有一個類是另一格類的數據成員的情況。在UML中表現為,聚集(aggregation)和組成(composition)。

            clip_image004clip_image005

            從圖上來看,這兩種關系都表現為一端是菱形的直線。其中有菱形的一端是整體,另外一端是部分。區別就是菱形是空心還是實心的。從C++曾序來看的話,如果圖畫成實心菱形的話,Class1就要負責Class2的創建和銷毀。更準確的說,就是如果Class1不存在了,Class2也一定不存在。例如象下面的程序。

            class Class2

            {

            };

            class Class1

            {

                Class2 m_objClass2;

            }

            當然也有下面的情況

            class Class2

            {

            };

            class Class1

            {

                Class1();

                ~Class1();

                Class2* m_pClass2Obj;

            };

            光看類的聲明就不行了。這是就需要看類的實現部分了。

            Class1::Class1()

            {

                m_pClass2Obj = new Class1; 

            }

            Class1::~Class1()

            {

                delete m_pClass2Obj;

                m_pClass2 = NULL;

            }

            組成(Composition)關系,如果在Class1的對象銷毀的時候,比如在析構函數中沒有將數據成員銷毀的代碼,那么這種關系就是聚集(aggregation)關系。當然,銷毀數據成員的代碼,會有很多種。

            依賴關系

            依賴關系就是在以個類中使用了另一個類。例如下面的代碼

            Class1::DoSomething()

            {

                Class3 obj;

                obj.DoClass3Work();

            }

            就是這樣的情況。畫成圖的話就像下面這樣。

            clip_image006

            posted on 2008-08-22 16:26 肥仔 閱讀(11396) 評論(0)  編輯 收藏 引用 所屬分類: UML

            无码任你躁久久久久久| 国产欧美一区二区久久| 久久只有这精品99| 久久无码人妻一区二区三区| 久久AV高清无码| 久久93精品国产91久久综合| 久久久久久精品免费免费自慰| 99久久无色码中文字幕人妻| 亚洲国产成人久久综合碰碰动漫3d | 久久99精品国产99久久6| 久久丫忘忧草产品| 国产—久久香蕉国产线看观看| 久久精品中文无码资源站| 久久亚洲国产欧洲精品一| 99久久www免费人成精品| 亚洲精品乱码久久久久久中文字幕| 欧美伊香蕉久久综合类网站| 亚洲香蕉网久久综合影视 | 国产午夜精品久久久久九九电影| 18禁黄久久久AAA片| 久久一区二区三区免费| 久久午夜电影网| 国产成人精品久久免费动漫| 精品一二三区久久aaa片| 亚洲AⅤ优女AV综合久久久| 国产福利电影一区二区三区久久老子无码午夜伦不 | 国产精品欧美久久久久天天影视| 久久人爽人人爽人人片AV| 国产精品久久新婚兰兰| 中文成人无码精品久久久不卡 | 欧美伊人久久大香线蕉综合69| 亚洲国产精品人久久| 国产精品久久永久免费| 久久精品亚洲日本波多野结衣| 国产69精品久久久久9999APGF| 久久久久久午夜精品| 色老头网站久久网| 国产色综合久久无码有码| 一本色道久久88精品综合| 无遮挡粉嫩小泬久久久久久久| 亚洲av日韩精品久久久久久a|