UML的幾種關係

2021-06-29 10:28:27 字數 1867 閱讀 1502

在uml類圖中,常見的有以下幾種關係: 泛化(generalization),  實現(realization),關聯(association),聚合(aggregation),組合(composition),依賴(dependency)

1. 泛化(generalization)

【泛化關係】:是一種繼承關係,表示一般與特殊的關係,它指定了子類如何特化父類的所有特徵和行為。例如:老虎是動物的一種,即有老虎的特性也有動物的共性。

【箭頭指向】:帶三角箭頭的實線,箭頭指向父類

2. 實現(realization)

【實現關係】:是一種類與介面的關係,表示類是介面所有特徵和行為的實現.

【箭頭指向】:帶三角箭頭的虛線,箭頭指向介面

3. 關聯(association)

【關聯關係】:是一種擁有的關係,它使乙個類知道另乙個類的屬性和方法;如:老師與學生,丈夫與妻子關聯可以是雙向的,也可以是單向的。雙向的關聯可以有兩個箭頭或者沒有箭頭,單向的關聯有乙個箭頭。

【**體現】:成員變數

【箭頭及指向】:帶普通箭頭的實心線,指向被擁有者

上圖中,老師與學生是雙向關聯,老師有多名學生,學生也可能有多名老師。但學生與某課程間的關係為單向關聯,一名學生可能要上多門課程,課程是個抽象的東西他不擁有學生。 

下圖為自身關聯: 

4. 聚合(aggregation)

【聚合關係】:是整體與部分的關係,且部分可以離開整體而單獨存在。如車和輪胎是整體和部分的關係,輪胎離開車仍然可以存在。

聚合關係是關聯關係的一種,是強的關聯關係;關聯和聚合在語法上無法區分,必須考察具體的邏輯關係。

【**體現】:成員變數

【箭頭及指向】:帶空心菱形的實心線,菱形指向整體

5. 組合(composition)

【組合關係】:是整體與部分的關係,但部分不能離開整體而單獨存在。如公司和部門是整體和部分的關係,沒有公司就不存在部門。

組合關係是關聯關係的一種,是比聚合關係還要強的關係,它要求普通的聚合關係中代表整體的物件負責代表部分的物件的生命週期。

【**體現】:成員變數

【箭頭及指向】:帶實心菱形的實線,菱形指向整體

6. 依賴(dependency)

【依賴關係】:是一種使用的關係,即乙個類的實現需要另乙個類的協助,所以要盡量不使用雙向的互相依賴.

【**表現】:區域性變數、方法的引數或者對靜態方法的呼叫

【箭頭及指向】:帶箭頭的虛線,指向被使用者

各種關係的強弱順序:

泛化 = 實現 > 組合 > 聚合 > 關聯 > 依賴

下面這張uml圖,比較形象地展示了各種類圖關係:

UML 幾種關係的理解

1,泛化關係 泛化關係的表現形式有3中,類a 整合類b 介面c 繼承 介面d 或者類e實現類f。2,組合關係 組合關係描述的是整體與區域性的關係,乙個整體有很多部分組成,即整體包含的部分。例如 身體包含了 頭部 四肢,身體。汽車包含 輪胎,車身,擋風玻璃。3,聚合關係 聚合關係也描述的是整體與部分的...

UML的幾種常見關係

在uml類圖中,常見的有以下幾種關係 泛化 generalization 實現 realization 關聯 association 聚合 aggregation 組合 composition 依賴 dependency 1.泛化 generalization 泛化關係 是一種繼承關係,表示一般與特...

UML 幾種關係的理解

1,泛化關係 泛化關係的表現形式有3中,類a 整合類b 介面c 繼承 介面d 或者類e實現類f。2,組合關係 組合關係描述的是整體與區域性的關係,乙個整體有很多部分組成,即整體包含的部分。例如 身體包含了 頭部 四肢,身體。汽車包含 輪胎,車身,擋風玻璃。3,聚合關係 聚合關係也描述的是整體與部分的...