自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

學習筆記 用Visio畫UML圖類結(jié)構(gòu)圖(進階篇)

開發(fā) 架構(gòu)
你對UML圖的畫法是否熟悉,本文就向大家介紹一下用Visio畫UML圖,希望通過本文的學習你對UML圖中類結(jié)構(gòu)圖的畫法有明確的認識。

本文和大家繼續(xù)學習用Visio畫UML圖類結(jié)構(gòu)圖,上一篇文章中說明了類結(jié)構(gòu)圖的基本畫法。要真正要完成實用的類圖,還要有許多工作要做。

用Visio畫UML圖類結(jié)構(gòu)圖(進階篇)

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

類之間的關(guān)系

繼承關(guān)系

用Visio畫UML圖中繼承關(guān)系是最容易理解的關(guān)系。畫成圖的話就像下面這樣。面向?qū)ο蟮恼f法就是is-a關(guān)系。也就是說Class2isaClass1。在C++中我們說Class2是Class1的派生類,或者說Class1是Class2的基類。

聚集和組成

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

 

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

  1. classClass2  
  2. {  
  3. };  
  4.  
  5. classClass1  
  6. {  
  7. Class2m_objClass2;  
  8. }  
  9.  

 當然也有下面的情況 

  1. classClass2  
  2. {  
  3. };  
  4. classClass1  
  5. {  
  6. Class1();  
  7. ~Class1();  
  8. Class2*m_pClass2Obj;  
  9. };  
  10.  

 光看類的聲明就不行了。這是就需要看類的實現(xiàn)部分了。 

  1. Class1::Class1()  
  2. {  
  3. m_pClass2Obj=newClass1;  
  4. }  
  5. Class1::~Class1()  
  6. {  
  7. deletem_pClass2Obj;  
  8. m_pClass2=NULL;  
  9. }  
  10.  

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

依賴關(guān)系

用Visio畫UML圖中依賴關(guān)系就是在以個類中使用了另一個類。例如下面的代碼

  1. Class1::DoSomething()  
  2. {  
  3. Class3obj;  
  4. obj.DoClass3Work();  
  5. }  
  6.  

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

【編輯推薦】

  1. Visio畫UML圖基本操作及技巧解析
  2. 全面認識九種基本的UML模型圖
  3. 用Visio畫UML圖類結(jié)構(gòu)圖步驟解析
  4. UML部署圖繪制及應用說明
  5. 解析用Visio畫UML圖的基本操作和幾種小技巧

 

責任編輯:佚名 來源: csdn.net
相關(guān)推薦

2010-07-05 12:37:29

用Visio畫UML圖

2010-07-05 12:50:01

用Visio畫UML用

2010-07-05 14:48:25

UML靜態(tài)結(jié)構(gòu)圖

2010-07-05 13:21:36

用Visio畫UML流

2010-06-28 17:38:59

Visio畫UML類圖

2010-06-29 13:22:26

UML類圖

2010-07-02 14:26:55

Visio畫UML用例

2010-07-02 10:54:58

畫UML圖

2010-07-05 13:00:38

用Visio畫UML圖

2010-07-06 13:11:50

Visio畫UML圖

2010-07-05 15:01:21

UML靜態(tài)結(jié)構(gòu)圖

2010-07-06 13:20:57

Visio畫UML用例

2010-07-07 17:51:06

UML類圖

2010-06-28 16:37:05

UML類圖

2010-07-01 11:52:59

UML類圖

2010-07-12 10:57:59

UML靜態(tài)結(jié)構(gòu)圖

2022-08-04 13:58:54

SeabornFacetGrid代碼

2010-06-29 11:16:02

UML畫類圖

2010-07-07 13:54:00

UML用例圖

2010-07-06 11:07:11

UML組件圖
點贊
收藏

51CTO技術(shù)棧公眾號