一、類的表示對象
第一個方格,貓是這個類的類名。繼承
第二個方格包含了兩個部分,左邊的+、-、# 表示了屬性的可見性,分表表示public、private、protected
右邊表示類的屬性。接口
第三個方格同屬性同樣,包含了兩部分,前面的符號表示了方法的可見性,後面表示類的方法。生命週期
二、類之間關係table
UML類圖中類之間的關係主要包括:依賴關係、泛化關係、關聯關係、實現關係。關聯關係包含了聚合關係、組合關係。方法
定義:有兩個元素X、Y,若是修改X的定義可能會引發對Y的定義修改,則稱Y依賴於元素Xim
產生依賴的緣由有不少,一般表現爲:一個類向另外一個類發送信息;一個類是另外一個類的數據成員;一個類是另外一個類的操做參數等。以下圖:數據
銀行做爲用戶貸款操做的參數,用戶依賴與銀行,UML類圖中用帶箭頭的虛線表示依賴關係。img
泛化關係描述了通常事物與該事物中的特殊種類之間的關係。Java中的繼承關係,父類就是子類泛化。
在UML中,泛化關係有三個條件:tab
泛化關係使用帶空心箭頭的實現表示,箭頭指向父類。以下圖:
關聯關係表示兩個類之間存在某種語義上的聯繫,好比一個公司有多個部門,一個部門有多個員工。
關聯關係是全部關係語義最弱的關聯。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或多個關聯數目 |
* | 表示有多個關聯數目 |