類:
第一層顯示類的名稱,(有的用斜體表示是抽象類);第二層是類的特性,通常是字段和屬性;第三層是類的操作,通常是方法或行爲(+表示public,- 表示private,#表示protected)
依賴關係
一個類依賴於另一個類,通常情況下是在A類中的方法,需要B類的實例作爲參數。動物類(Animal)有一個吃(Eat)的方法,需要食物類(Food)的實例作爲傳入參數。所以Animal依賴於Food。
箭頭+虛線 表示。箭頭指向依賴對象
繼承關係
子類繼承父類,子類和父類的關係是“is a”,例如鳥是一種動物,則鳥類(Bird)繼承動物類(Animal)
空心三角+實線 表示。三角指向父類
聚合關係
聚合表示一種弱擁有關係,體現的是A對象可以包含B對象,而B對象不一定是A對象的一部分。例如:雁羣(GooseGroup)由多個大雁(WildGoose)組成,但並不是所有的大雁都得在一個雁羣裏。
空心菱形+實線箭頭。箭頭指向元素。數字表示他們之間的對應關係,比如:1個雁羣由7只大雁組成
合成(組合)關係
合成表示一種強擁有關係,體現了嚴格的整體和部分的關係,部分和整體的生命週期一樣。例如:鳥和翅膀
實心菱形+實線箭頭。箭頭指向元素
實現接口
實現類與接口的關係是has a(區別於繼承),表示類實現接口的契約,擁有了接口賦予的職能
空心三角+虛線。三角指向接口
關聯關係
當一個類A裏,需要創建另一個類B的實例。則他們是關聯關係。例如:企鵝類(Penguin)需要根據氣候(Climate)的變化來進行某些改變。這時候在企鵝類裏就需要new一個氣候類的實例,然後通過此實例獲取一些氣候相關的信息,進行判定做一些處理。
實線箭頭表示
整體類圖如下: