UML類圖

一、類的表示對象

CatUML

第一個方格,貓是這個類的類名。繼承

第二個方格包含了兩個部分,左邊的+、-、# 表示了屬性的可見性,分表表示public、private、protected
右邊表示類的屬性。接口

第三個方格同屬性同樣,包含了兩部分,前面的符號表示了方法的可見性,後面表示類的方法。生命週期

二、類之間關係table

UML類圖中類之間的關係主要包括:依賴關係、泛化關係、關聯關係、實現關係。關聯關係包含了聚合關係、組合關係。方法

依賴關係

定義:有兩個元素X、Y,若是修改X的定義可能會引發對Y的定義修改,則稱Y依賴於元素Xim

產生依賴的緣由有不少,一般表現爲:一個類向另外一個類發送信息;一個類是另外一個類的數據成員;一個類是另外一個類的操做參數等。以下圖:數據

依賴

銀行做爲用戶貸款操做的參數,用戶依賴與銀行,UML類圖中用帶箭頭的虛線表示依賴關係img

泛化關係

泛化關係描述了通常事物與該事物中的特殊種類之間的關係。Java中的繼承關係,父類就是子類泛化。
在UML中,泛化關係有三個條件:tab

  1. 父類所具備的關聯、屬性和操做,子類都應該具備
  2. 子類除了與父類一致的信息外還包含額外的信息
  3. 可使用父類的地方,也可使用子類實例

泛化關係使用帶空心箭頭的實現表示,箭頭指向父類。以下圖:

泛化

關聯關係

關聯關係表示兩個類之間存在某種語義上的聯繫,好比一個公司有多個部門,一個部門有多個員工。
關聯關係是全部關係語義最弱的關聯。UML類中中,用實線來表示

關聯

在上圖中一、1..n是用來表示關聯的兩個類之間的數量關係。具體參見類的多重性。

聚合關係

聚合關係是一種特殊的關聯關係。聚合關係表示了類之間的總體與部分的關係。總體與部分之間並無相同的生命週期,總體消亡後部分可依舊存在。在UML中用帶有空心菱形的實線表示,空心菱形指向表明總體的類。好比:電腦是由CPU、主板等組成的。UML表示圖以下:
聚合

組合關係

組合關係也是部分和總體的關係,相對聚合關係,組合關係中的部分和總體聯繫更爲緊密。總體與部分之間有相同的生命週期,總體消亡後部分也隨之消亡。好比公司和部門之間的關係,一旦公司解散,部門也隨之解散。UML中用帶有實心菱形的實線表示。UML圖以下:

組合關係

實現關係

實現關係用來規定接口和實現接口的類或組件之間的關係。接口能夠看做是操做的集合,這些操做用於規定類或組件的服務。在UML中,用一個帶空心箭頭的虛線來表示。好比咱們抽象出飛行這個動做,而對於不一樣的類能夠經過實現飛行接口來做個性化處理。UML圖以下:

實現關係

類的多重性

多重性是用來講明兩個類之間的數量關係,表示爲一個整數範圍n...m,整數n定義所連接的最少對象的數目,m爲最多對象數目(但不肯定最大數時,能夠*號表示)。常見的多重性以下表

表示 含義
0...1 表示0或者1的關聯數目
0...* 表示0或多個關聯數目
1...1 表示1個關聯數目
1...* 表示1或多個關聯數目
* 表示有多個關聯數目
相關文章
相關標籤/搜索