【系統分析與設計】UML類圖繪製方法(真の能看懂~!)


所有的面向對象(Object Oriented)語言都離不開類的概念,理解了程序中類的設計也就理解了程序的一半。但類的具體描述方式在各個類中都不一樣,UML類圖的提出是爲了能夠脫離語言的限制,抽象地描述各個類的信息及各個類之間的關係。這是UML類圖的作用。

1 類的基本表示方式

在UML類圖中,每一個矩形代表一個類。我們舉一個簡單的例子:
在這裏插入圖片描述
這是一個代表車輛的類。

一般的類圖分爲三個部分。部分類圖有五個部分。

第一部分爲類名,如果類名用正體書寫則說明這是可以實例化的普通類。如果類名用斜體書寫,則說明這是抽象類。如果類名有下劃線修飾則說明這是靜態類。

第二部分爲類內的屬性,格式爲修飾符 屬性名 :屬性類型。修飾符爲“+”說明該屬性爲public型,“#”說明該屬性爲protected型,“-”說明該屬性爲private型。

第三部分爲類內的方法,格式爲修飾符 方法名 (參數名1:參數類型1,……):方法返回值類型。修飾符爲“+”說明該方法爲public型,“#”說明該方法爲protected型,“-”說明該方法爲private型。如果方法名有下劃線修飾則說明這是靜態方法。

如果類圖中需要描述類的性質,則放在第四部分描述。如果類內有內部類,則放在第五部分描述。

如果類圖描述的是一個接口,在接口名的上方需要加上《interface》的修飾符。同時該類圖僅有兩個部分,接口名和接口的方法。

對於任何一張類圖,只要對照上面的說明就可以解讀出含義。

2 類之間關係的表示方式

類之間的關係有繼承關係,實現關係,依賴關係,關聯關係,聚合關係,組合關係。

1.繼承關係

繼承關係使用如下箭頭:
在這裏插入圖片描述
由子類指向父類。

2.實現關係

實現關係使用如下箭頭:

在這裏插入圖片描述

有實現類指向接口

3.依賴關係

依賴關係使用如下箭頭:
在這裏插入圖片描述
由使用者指向被使用者。

如果A指向B,則說明A中使用了B,使用方式包括A類中有B類實例化對象的局部變量。A類中有方法把B類實例化對象當做了參數,A類中有方法調用了B類中的靜態方法。

4.關聯關係

關聯關係使用如下箭頭:
在這裏插入圖片描述
由擁有者指向被擁有者。

如果A指向B,則說明A類中有B類的成員變量。

5.聚合關係

聚合關係使用如下箭頭:
在這裏插入圖片描述
由整體指向部分。

如果A指向B,則說明A類中有B類的成員變量,但是與關聯關係不同,A類和B類有邏輯關係。A類是整體,B類是部分。A類由B類構成,同時B類即便不在A類中也可以單獨存在。

6.組合關係

組合關係使用如下箭頭:
在這裏插入圖片描述

由整體指向部分。

如果A指向B,則說明A類中有B類的成員變量,但是與關聯關係不同,A類和B類有邏輯關係。A類是整體,B類是部分。A類由B類構成。但與聚合關係不同,如果B類不在A類中就無法單獨存在。

兩個類之間究竟是聚合還是組合完全由類的設計決定。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章