UML常見類圖關係

享受達到目標的這個過程,會讓自己變輕鬆!

1、UML類圖關係

1.1、泛化

【泛化】表示是一般與特殊的關係,是is a 的關係,表示的是一種繼承關係。
【比如】狗和動物,狗屬於動物,狗和動物是一種繼承關係,是泛化關係
【代碼】java中 A extends B,A和B就是泛化關係
【UML畫法示例】(帶三角箭頭的實線,箭頭指向父類)
這裏寫圖片描述

1.2、實現

【實現】是一種類與接口的關係,表示類是接口特徵和行爲的實現
【比如】通常我們編寫代碼的時候都會先寫一個接口,然後實現類去實現接口。實現類和接口之間是一種實現關係。
【代碼】java中 A implement B ,A和B是泛化關係
【UML畫法示例】(帶三角箭頭的虛線,箭頭指向接口)
這裏寫圖片描述

1.3、關聯

【關聯】它描述了不同類的對象之間的結構關係,使一個類知道另一個類的屬性和行爲。關聯關係有單向關聯、雙向關聯、自關聯。
【比如】老師和學生,老師知道班裏的學生信息,學生不知道老師信息,老師和學生是一種單向關聯關係;老師知道學生信息,學生也知道老師的信息,老師和學生是雙向關聯關係;老師知道同行老師的信息,老師和老師是自關聯關係。
【代碼】成員變量;類A持有類B的引用作爲成員變量,類A和B就是關聯關係,箭頭指向B
【UML畫法示例】
這裏寫圖片描述

1.4、聚合

【聚合】聚合是一種特殊的關聯關係,是一個整體和部分的關係,部分可以離開整體而單獨存在。聚合是一種語義關係,需要分析邏輯關係。
【比如】一個部門和人員的關係,部門不存在了,人員照樣可以單獨存在。部門和人員在語義上就是聚合關係
【代碼】成員變量;比如部門類(Department)持有人員類(Person)作爲成員變量,部門類和人員類是聚合關係
【UML畫法示例】(空心菱形指向整體)
這裏寫圖片描述

1.5、組合

【組合】組合是一種特殊的關聯關係,是一個整體和部分的關係,但是部分不能離開整體單獨存在。組合和聚合一樣,也是一種語義關係,需要分析邏輯關係
【比如】公司和部門的關係,公司都不存在了,部門自然也不存在了。所以公司和部門就是一個組合關係
【代碼】成員變量;公司類(Company)持有部門類(Department)作爲成員變量,公司類和部門類是組合關係
【UML畫法示例】(實心菱形指向整體)
這裏寫圖片描述

1.6、依賴

【依賴】一個類A使用到了另一個類B,而這種使用關係是具有偶然性、臨時性、非常弱的,但是B類的變化會影響到A,是一種使用關係
【代碼】局部變量、方法的參數
【UML畫法示例】(一條虛線,箭頭執行被依賴的類)
這裏寫圖片描述

2、UML類圖總結

  • 聚合和組合是特殊的關聯關係
  • 關係強弱順序:泛化=實現>組合>聚合>關聯>依賴

3、UML類圖繪製工具

3.1、ProcessOn

非常強大的在線工具,可以畫流程圖、UML、原型圖等,完全免費。
這裏寫圖片描述

3.2、StarUML

UML繪製的客戶端軟件,Mac、Windows、Linux都有,可一直免費試用。
這裏寫圖片描述

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