1. 程式人生 > >關聯、組合、聚合、依賴關係比較

關聯、組合、聚合、依賴關係比較


     Association關聯 系表現為變數(has a )。類與類之間的聯接,它使一個類知道另一個類的屬性和方法。例如如果A依賴於B,則B體現為A的全域性變數。關聯關係有雙向關聯和單向關聯。雙向關聯:兩個類都知道另一個類的公共屬性和操作。單向關聯:只有一個類知道另外一個類的公共屬性和操作。大多數關聯應該是單向的,單向關係更容易建立和維護,有助於尋找可服用的類。



    Aggregat ion(聚合關係是關聯關係的一種,是強的關聯關係。聚合關係是整體和個體的關係。普通關聯關係的兩個類處於同一層次上,而聚合關係的兩個類處於不同的層次,一個是整體,一個是部分。同時,是一種弱的“擁有”關係。體現的是
A物件可以包含B物件,但B物件不是A物件的組成部分。具體表現為,如果AB聚合成,表現為A包含有B的全域性物件,但是B物件可以不在A建立的時刻建立。



    Composition(組合關係)是關聯關係的一種,是比聚合關係強的關係。它要求普通的聚合關係中代表整體的物件負責代表部分的物件的生命週期。Composition(組合關係)是一種強的“擁有”關係,體現了嚴格的部分和整體的關係,部分和整體的生命週期一致。如果AB組成,表現為A包含有B的全域性物件,並且B物件在A建立的時刻建立。


Dependency(依賴關係)表現為函式中的引數(use a)。是類與類之間的連線,表示一個類依賴於另一個類的定義,其中一個類的變化將影響另外一個類。例如如果A
依賴於B,則B體現為區域性變數,方法的引數、或靜態方法的呼叫。



來至於http://blog.csdn.net/maybehelios/archive/2008/01/12/2038685.aspx 

相關推薦

關聯組合聚合依賴關係比較

     Association關聯 系表現為變數(has a )。類與類之間的聯接,它使一個類知道另一個類的屬性和方法。例如如果A依賴於B,則B體現為A的全域性變數。關聯關係有雙向關聯和單向關聯。雙向關聯:兩個類都知道另一個類的公共屬性和操作。單向關聯:只有一個類知道另外一個類的公共屬性和操作。大多數關聯

《Java瘋狂講義》中關聯組合聚合的謬誤

color 有意 sel 面向對象 cal chan nts uci 摘錄 本文參考例如以下資料(建議閱讀): a). difference-aggregation-acquaintance-and-composition-as-used-by-gang-of-f

(2)選擇器:class選擇器id選擇器關聯選擇器組合選擇器偽元素選擇器

就是制定css要作用的標籤,那個標籤的名稱就是選擇器,意為選擇哪個容器 (1)class選擇器,使用的是標籤中的屬性。在一個網頁中可以定義多個style 指定哪個類用”.” <style

java物件間的關係(依賴關聯組合聚合)

組合,聚合,關聯,依賴 的區別 依賴與關聯依賴(Dependency ) : 含義:是類與類之間的連線,表示一個類依賴於另外一個類的定義;依賴關係僅僅描述了類與類之間的一種使用與被使用的關係; 體現:在Java和C++中體現為區域性變數、方法/函式的引數或者是對靜態方法的呼

java物件間的關係(依賴關聯組合聚合,繼承)

java類之間最常見的幾種關係: 依賴 ("uses-a") 依賴關係描述了類與類之間使用與被使用的關係。 表現在程式碼上,為依賴的類的某個方法以被依賴的類作為其引數。或者是class A 的某個方法創造了 class B 的例項抑或對class B的靜態方法的呼叫。如

【軟考】——面向物件技術(互動圖構件圖組合結構圖協作圖部署圖包圖)

互動圖???——》對系統的動態方面進行建模; 互動圖組成???——》物件、訊息、生命線等; 互動圖表現???——》序列圖、通訊圖、互動概覽圖、計時圖、狀態圖; 順序圖主要元素

百度地圖自定義標註資訊視窗多種類聚合主題(一篇嘔心瀝血的部落格...)

一、序     最近做百度地圖的圖形化定製。略有心得,在此和大家分享一下,少走彎路。先看目錄,大致介紹一下都寫了些啥。我會從最基本的來,一點點往下寫,同志們可以看目錄自己去找需要的部分。ps:注意,我用的是百度地圖 2.0 版本,例子也都是。   這個完整程式碼,我會上傳到 githu

UML中常見關係詳解(泛化實現依賴關聯組合聚合

UML中類與類,已經類與介面,介面與介面的關係有:泛化(generalization),關聯(association),依賴(dependency),實現(realization)這幾種。   泛化(generalization)關係時指一個

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

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

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

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

用例關係(包含擴充套件泛化) uml類關係依賴關聯聚合組合泛化)

用例關係 用例圖使使用者 與開發人員交流的一種重要的方式,是對使用者需求的一種描述。開發人員從使用者的角度整體上理解系統的功能。 1)用例“註冊學生資訊”和“充值”與用例“使用者登陸”之間的關係就是包含關係。b和a本質不一樣,就是做b之前一定要做a,那a和b就是包含。

設計模式之UML(一)類圖以及類間關係(泛化 實現依賴關聯聚合組合

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

認識UML類關係——依賴關聯聚合組合泛化

在學習面向物件設計時,類關係涉及依賴、關聯、聚合、組合和泛化這五種關係,耦合度依次遞增。關於耦合度,可以簡單地理解為當一個類發生變更時,對其他類造成的影響程度,影響越小則耦合度越弱,影響越大耦合度越強。 下面根據個人理解,嘗試講解這五種類關係。 1.依賴(D

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

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

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

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

UML類圖關係(泛化依賴關聯聚合組合

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

幾種類間關係:繼承實現依賴關聯聚合組合及UML實現圖

轉自:http://www.cnblogs.com/yyyyy5101/archive/2011/03/11/1981078.html 繼承 指的是一個類(稱為子類、子介面)繼承另外的一個類(稱為父類、父介面)的功能,並可以增加它自己的新功能的能力,繼承是類與類或者介面與介

類和類之間的依賴關聯聚合組合關係

一、繼承關係     繼承指的是一個類(稱為子類、子介面)繼承另外的一個類(稱為父類、父介面)的功能,並可以增加它自己的新功能的能力。在Java中繼承關係通過關鍵字extends明確標識,在設計時一般沒有爭議性。在UML類圖設計中,繼承用一條帶空心三角箭頭的實線表示,從子類指向父類,或者子介面指向父介面。  

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

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

StarUML類圖相關——關聯聚合組合泛化依賴實現

及其 jpg str 類的繼承 sed core tar 必須 物理 在閱讀設計模式相關的書籍,或者其他一些項目、相關博客等等,經常會遇到類圖,它對於一個類的信息,如變量、方法及其可見性,類與類(接口)之間的繼承關系、依賴關系、聚合關系、組合關系等,都可以比