UML---六種關係

六種關係

在這裏插入圖片描述

各種關係介紹

一.實現
1.指的是一個類實現接口(可以是多個)的功能
2.實現是類與接口之間最常見的關係

UML圖中使用一條帶有空心三角箭頭的虛線指向接口。

在這裏插入圖片描述
二.泛化
泛化表現爲繼承或實現關係,具體形式爲類與類之間的繼承關係,接口與接口之間的繼承關係,類與接口的實現關係.就是說一個類(子類)繼承另一個類(父類)的功能,並可以增加他自己的新功能的能力.

UML圖中使用一條帶有空心三角箭頭的實線指向父類(基類)
在這裏插入圖片描述
三.依賴

是類與類之間的連接,表示一個類依賴於另一個類的定義,其中一個類的變化將影響另外一個類,依賴關係是單向的.比如:類A使用到了類B,這種依賴具有偶然性,臨時性,是非常脆弱的關係.但是類B的變化會影響到類A.

1.類B以參數的形式傳入類A的方法
2.類B以局部變量的形式存在於類A的方法中
3.類A調用類B的靜態方法

UML圖中使用一條帶有箭頭的虛線指向被依賴的類

在這裏插入圖片描述
四.關聯
類與類之間的聯接,它使一個類知道另一個類的屬性和方法.例如:如果A依賴於B,則B體現爲A的全局變量
關聯關係有雙向關聯和單向關聯,用單箭頭表示單向關聯,雙箭頭或者不使用箭頭表示雙向關聯
雙向關聯:兩個類都知道另一個類的公共屬性和操作
單向關聯:只有一個類知道另外一個類的公共屬性和操作

UML圖中使用一條實線連接相同或不同類
在這裏插入圖片描述
五.聚合
是關聯關係的一種,是強的關聯關係;聚合關係是整體和個體的關係.普通關聯關係的兩個類處於同一層次上,而聚合關係的兩個類處於不同的層次,一個是整體,一個是部分,同時,是一種弱的"擁有"關係.此時整體與部分之間是可分離的,他們可以具有各自的生命週期,部分可以屬於多個整體對象,也可以爲多個整體對象共享;比如計算機與CPU,公司與員工的關係等;表現在代碼層面,和關聯關係是一致的,只能從語義級別來區分

UML圖中使用一條帶有虛心菱形的實線來表示

在這裏插入圖片描述
六.組合
是關聯關係的一種,是比聚合強的關聯關係.他要求普通的聚合關係中代表整體的對象負責代表部分的對象的生命週期
組合關係是一種強的“擁有”關係,體現了嚴格的部分和整體的關係,部分和整體的生命週期一致。他同樣體現整體與部分間的關係,但此時整體與部分是不可分的,整體的生命週期結束也就意味着部分的生命週期結束;比如你和你的大腦,window窗口和frame,在窗口中創建一個frame時必須把它附加到窗口上,當窗口消失時frame也就消失了;表現在代碼層面,和關聯關係是一致的,只能從語義級別來區分

UML圖中使用一條帶有實心菱形的線來表示

在這裏插入圖片描述
幾種關係所表現的強弱程度依次爲:組合>聚合>關聯>依賴

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