1. 程式人生 > >UML類圖關係(繼承、實現、依賴、關聯、聚合、組合)

UML類圖關係(繼承、實現、依賴、關聯、聚合、組合)

原文地址:http://www.cnblogs.com/olvo/archive/2012/05/03/2481014.html

類圖中包涵題目中的6中關係,用例圖中包涵泛化(繼承和實現的通稱),包含,擴張等

uml中關係很多,注意各個關係使用的是uml中的哪類圖即可,下面的轉載是覺得合理的部分,這些足夠說明這幾種關係了,原文有些囉嗦,

繼承、實現、依賴、關聯、聚合、組合的聯絡與區別

分別介紹這幾種關係:

繼承

指的是一個類(稱為子類、子介面)繼承另外的一個類(稱為父類、父介面)的功能,並可以增加它自己的新功能的能力,繼承是類與類或者介面與介面之間最常見的關係;在Java中此類關係通過關鍵字extends明確標識,在設計時一般沒有爭議性; 

實現

指的是一個class類實現interface介面(可以是多個)的功能;實現是類與介面之間最常見的關係;在Java中此類關係通過關鍵字implements明確標識,在設計時一般沒有爭議性; 

依賴

可以簡單的理解,就是一個類A使用到了另一個類B,而這種使用關係是具有偶然性的、、臨時性的、非常弱的,但是B類的變化會影響到A;比如某人要過河,需要借用一條船,此時人與船之間的關係就是依賴;表現在程式碼層面,為類B作為引數被類A在某個method方法中使用; 

關聯

他體現的是兩個類、或者類與介面之間語義級別的一種強依賴關係,比如我和我的朋友;這種關係比依賴更強、不存在依賴關係的偶然性、關係也不是臨時性的,一般是長期性的,而且雙方的關係一般是平等的、關聯可以是單向、雙向的;表現在程式碼層面,為被關聯類B以類屬性的形式出現在關聯類A中,也可能是關聯類A引用了一個型別為被關聯類B的全域性變數; 

聚合

聚合是關聯關係的一種特例,他體現的是整體與部分、擁有的關係,即has-a的關係,此時整體與部分之間是可分離的,他們可以具有各自的生命週期,部分可以屬於多個整體物件,也可以為多個整體物件共享;比如計算機與CPU、公司與員工的關係等;表現在程式碼層面,和關聯關係是一致的,只能從語義級別來區分; 

組合

組合也是關聯關係的一種特例,他體現的是一種contains-a的關係,這種關係比聚合更強,也稱為強聚合;他同樣體現整體與部分間的關係,但此時整體與部分是不可分的,整體的生命週期結束也就意味著部分的生命週期結束;比如你和你的大腦;表現在程式碼層面,和關聯關係是一致的,只能從語義級別來區分; 

對於繼承、實現這兩種關係沒多少疑問,他們體現的是一種類與類、或者類與介面間的縱向關係;其他的四者關係則體現的是類與類、或者類與介面間的引用、橫向關係,是比較難區分的,有很多事物間的關係要想準備定位是很難的,前面也提到,這幾種關係都是語義級別的,所以從程式碼層面並不能完全區分各種關係;

但總的來說,後幾種關係所表現的強弱程度依次為:組合>聚合>關聯>依賴;


相關推薦

UML關係繼承實現依賴關聯聚合組合

原文地址:http://www.cnblogs.com/olvo/archive/2012/05/03/2481014.html 類圖中包涵題目中的6中關係,用例圖中包涵泛化(繼承和實現的通稱),包含,擴張等 uml中關係很多,注意各個關係使用的是uml中的哪類圖即可,下面

UML關係泛化 繼承實現依賴關聯聚合組合-轉

繼承、實現、依賴、關聯、聚合、組合的聯絡與區別 分別介紹這幾種關係: 繼承 指的是一個類(稱為子類、子介面)繼承另外的一個類(稱為父類、父介面)的功能,並可以增加它自己的新功能的能力,繼承是類與類或者介面與介面之間最常見的關係;在Java中此類關係通過關鍵字extends明確標識,在設計

UML關係泛化 繼承實現依賴關聯聚合組合

繼承、實現、依賴、關聯、聚合、組合的聯絡與區別 分別介紹這幾種關係: 繼承 指的是一個類(稱為子類、子介面)繼承另外的一個類(稱為父類、父介面)的功能,並可以增加它自己的新功能的能力,繼承是類與類或者介面與介面之間最常見的關係;在Java中此類關係通過關鍵字extends明確標識,在設計時一般沒有爭議性; 

UML關係繼承實現依賴關聯聚合組合

原文出自 https://www.cnblogs.com/jiqing9006/p/5915023.html 繼承 指的是一個類(稱為子類、子介面)繼承另外的一個類(稱為父類、父介面)的功能,並可以增加它自己的新功能的能力,繼承是類與類或者介面與介面之間最常見的關係;在Java

UML關係泛化依賴關聯聚合組合

一、泛化關係 表示類與類之間的繼承關係,介面與介面之間的繼承關係,或類對介面的實現關係。一般化的關係是從子類指向父類的,與繼承或實現的方法相反。 二、關聯關係 表示類與類之間的聯接,它使一個類知道另一個類的屬性和方法。體現的是兩個類、或者類與介面之間語義級別的一種強依賴關係

UML關係依賴關聯聚合組合,泛化,實現

轉自 https://blog.csdn.net/k346k346/article/details/59582926   在學習面向物件設計時,類關係涉及依賴、關聯、聚合、組合和泛化這五種關係,耦合度依次遞增。關於耦合度,可以簡單地理解為當一個類發生變更時,對其他類造成的影響程

UML關系依賴關聯聚合組合,泛化,實現

對比 區別 ++ brush 面向對象設計 ali 單向關聯 箭頭 有關 轉自https://blog.csdn.net/k346k346/article/details/59582926 在學習面向對象設計時,類關系涉及依賴、關聯、聚合、組合和泛化這五種關系,耦合度依

UML 關係及符號表達

UML 類圖關係及符號表達 UML 類圖中有以下幾種常見的關係,依賴(Dependency)、關聯(Association)、聚合(Aggregation)、組合(Composition)、泛化(Generalization)和實現(Realization),下面對這幾種關係及其表達

UML與Java-- UML於Java的基本實現

類圖是最常用的UML圖,他可以清楚地表示程式中類的基本結構,類與類之間的結構關係,掌握UML類圖對於瞭解系統的總體結構和設計模式有著重大的作用。下面我會介紹類圖的基本知識以及類圖在Java中的基本實現形式。 類(Class) 面向物件程式設計中,類是物件的骨架,它了包

UML關係和StarUML使用說明

UML圖中類之間的關係:依賴,泛化,關聯,聚合,組合,實現 類與類圖 1) 類(Class)封裝了資料和行為,是面向物件的重要組成部分,它是具有相同屬性、操作、關係的物件集合的總稱。 2) 在系統中,每個類具有一定的職責,職責指的是類所擔任的任務,即類要完成什麼樣的功能

UML關係(C++)

♀ 雙向關聯(Association) CAssociation1和CAssociation2可以互相呼叫對方的公共成員函式和成員變數。程式碼觸析:class CAssociation1 { private: CAssociation2* m_pAssociati

UML操作

在上一篇中講了類圖的操作以及介紹,當然類不是單獨存在的,類與類之間存在著關係,UML提供了類之間的關係的表達方式。下面簡單介紹設定操作,雙擊關係線,然後找到Detail1.關聯關係(Association)關聯關係:屬於結構關係,物件與物件之間的關係1.1.1單向關聯clas

UML關係關聯 聚合 依賴關係及其區別

本文和大家重點討論一下UML類圖關係方面的內容,UML類圖關係主要有關聯,聚合/組合,依賴,泛化等幾種,這裡向大家介紹一下關聯,聚合和依賴這三種關係及其區別。 小記: 幾種關係(關聯、聚合/組合、依賴)在程式碼中可能以指標、引用、值等的方式在另一個類中出現,不拘於形式,

UML關係依賴關聯聚合組合的區別

UML Class Relationships 由於最近看一些java書涉及到了uml類圖,因此查閱資料,思考後整理總結寫成如下文章 注重於理解,沒有如何實現(畫圖)的部分 Generalization/specialization

UML總結淺顯易懂實用

UML類圖的作用是描述程式中類的資訊及各個類之間的關係。所有的面向物件(Object Oriented)語言都離不開類的概念,理解了程式中類的設計也就理解了程式的一半。但類的具體描述方式在各個類中都不一樣,UML類圖的提出是為了能夠脫離語言的限制,抽象地描述各個類的資訊及各個

UML關係

在UML類圖中,常見的有以下幾種關係:泛化(Generalization),  實現(Realization),關聯(Association),聚合(Aggregation),組合(Composition),依賴(Dependency) 1.泛化(Generalizati

java JUnit,TestCase,TeseSuit,合成模式(安全/透明),物件間的關係(依賴關聯聚合組合)

JUnit,TestCase,TeseSuit: https://www.jianshu.com/p/c9a267d691e2 https://blog.csdn.net/lan12334321234/article/details/70048751 合成模式(安全/透明): https://blog

UML關系泛化 繼承實現依賴關聯聚合組合-轉

定位 雙向 圖關系 bst 操作 att one 一般來說 eal 繼承、實現、依賴、關聯、聚合、組合的聯系與區別 分別介紹這幾種關系: 繼承 指的是一個類(稱為子類、子接口)繼承另外的一個類(稱為父類、父接口)的功能,並可以增加它自己的新功能的能力,繼承是類與類或者

設計模式之UML以及關係泛化 實現依賴關聯聚合組合

類圖用於描述系統中所包含的類以及它們之間的相互關係,幫助人們簡化對系統的理解,它是系統分析和設計階段的重要產物,也是系統編碼和測試的重要模型依據。接下來我們就來談談類圖的組成,在下一篇中我們將討論一下類圖之間的關係。 一、類圖的組成 1. 普通類 上圖

UML中常見的幾種關係:泛化 實現關聯聚合組合

在UML類圖中,常見的有以下幾種關係:泛化(Generalization),  實現(Realization),關聯(Association),聚合(Aggregation),組合(Composition),依賴(Dependency) 1.泛化(Generalizati