類 簡要畫法
- 類有三個單元格的矩形(看上圖中的
動物類) - 第一格:類名稱(如果是抽象類,名稱標注為斜體字)
- 第二格:類屬性名稱
- 第三格:類操作名稱
類屬性或者操作的訪問修改符的標注:
- public用加號標注
- private用減號標注
- protected用#號標注
接口 簡要畫法
- 接口有兩個單元格的矩形(看上圖中的
飛翔接口) - 第一格:接口名稱(名稱前面要加入接口標注<>)
- 第二格:操作名稱
屬性或者操作的訪問修改符的標注:同類
繼承關系 簡要畫法
- 繼承關系簡單介紹:類似
is-a的關系,如:貓是一個動物 - 鳥類+實線+空心三角形+動物類(即
鳥類繼承動物類,參考上圖中的標注①) - 箭頭方向說明:箭頭方向由子類指向父類
接口實現關系 簡要畫法
- 簡單介紹:接口表達的是一種
has-a的關系,即擁有這類接口的操作,如:貓可以實現爬樹的接口 - 大雁類+虛線+空心三角形+
飛翔接口(即大雁類實現了接口飛翔,參考上圖中的標注②) - 箭頭方向說明:箭頭方向由類指向接口
依賴關系 簡要畫法
- 簡單介紹:依賴關系表達的是一種
use-a的關系,即一個類臨時引用另外一個類的方法實現功能 - 動物類+虛線+箭頭+氧氣類和水類(即
動物類依賴氧氣類和水類,參考上圖中的標注③) - 箭頭方向說明:箭頭由類指向被依賴類
關聯關系 簡要畫法
- 簡單介紹:關聯關系表達的是一種
強依賴關系,需要長期知道對方,使用對方,如企鵝需要總是知道氣候的變化 - 企鵝類+實線+箭頭+氣候類(即
企鵝類關聯氣候類,參考上圖中的標注④) - 箭頭方向說明:箭頭由類指向被關聯類
聚合關系 簡要畫法
- 簡單介紹:聚合關系表達的是一種
弱擁有關系,如電腦與很多外設的關系 - 雁群類+空心菱形+實線+箭頭+大雁類(即
雁群類是由大雁類聚合成的,參考上圖中的標注⑤) - 箭頭方向說明:箭頭由整體指向部分
合成(或說組合)關系 簡要畫法
- 簡單介紹:合成關系表達的是一種
強擁有關系,並且生命周期相同,不能單獨存在 - 鳥類+實心菱形+實線+箭頭+翅膀類(即
鳥類是由翅膀類及其它類合成的,參考上圖中的標注⑥) - 箭頭方向說明:箭頭由整體指向部分

關系
常見的關系有:繼承(Inheritance),關聯關系(Association),聚合關系(Aggregation),復合關系(Composition),依賴關系(Dependency),實現關系(Realization/Implementation)。
其中,聚合關系(Aggregation),復合關系(Composition)屬於關聯關系(Association)。
類圖中的關系表示一般關系表現為繼承或實現關系(is a),關聯關系表現為變量(has a ),依賴關系表現為函數中的參數(use a)。
一般化關系:表示為類與類之間的繼承關系,接口與接口之間的繼承,類對接口的實現關系。
表示方法: 用一個空心箭頭+實線,箭頭指向父類。或空心箭頭+虛線,如果父類是接口。
關聯關系:類與類之間的聯接,它使一個類知道另一個類的屬性和方法。
表示方法:用 實線+箭頭, 箭頭指向被使用的類。
聚合關系:是關聯關系的一種,是強的關聯關系。聚合關系是整體和個體的關系。關聯關系的兩個類處於同一層次上,而聚合關系兩個類處於不同的層次,一個是整體,一個是部分。
表示方法:空心菱形+實線+箭頭,箭頭指向個體。
合成關系:是關聯關系的一種,是比聚合關系強的關系。它要求普通的聚合關系中代表整體的對象負責代表部分的對象的生命周期,合成關系不能共享。
表示方法:實心菱形+實線+箭頭,
依賴關系:是類與類之間的連接,表示一個類依賴於另一個類的定義。例如如果A依賴於B,則B體現為局部變量,方法的參數、或靜態方法的調用。
表示方法:虛線+箭頭 箭頭指向被依賴的一方,也就是指向局部變量。

