UML類圖中的四種關係深入剖析

2020-12-05 51CTO

UML類圖中的四種關係深入剖析

UML類圖你是否熟悉,這裡就向大家介紹一下UML類圖中的四種關係,相信通過本文的介紹大家對UML類圖有更加深刻的認識,歡迎大家一起來學習UML類圖。

作者:walksnake來源:csdn.net|2010-06-09 09:41

本節和大家一起看一下UML類圖中的關係,UML類圖中的關係分為四種:泛化、依賴、關聯、實現,希望通過本節的介紹大家對UML類圖關係有清晰的認識,下面就讓我們一起來看一下它的四種關係吧。

UML類圖中的關係

UML類圖中的關係分為四種:泛化、依賴、關聯、實現;關聯關係又可以細化為聚合和組合。

1.泛化(Generalization)

UML類圖中的泛化是父類和子類之間的關係,子類繼承父類的所有結構和行為。在子類中可以增加新的結構和行為,也可以覆寫父類的行為。

2.依賴(Dependency)

依賴關係是一種使用關係,特定事物的改變有可能會影響到使用該事物的事物,反之不成立。在你想顯示一個事物使用另一個事物時使用。

通常情況下,依賴關係體現在某個類的方法使用另一個類作為參數。

如果模塊A調用模塊B提供的方法,或訪問模塊B中的某些數據成員(當然,在面向對象開發中一般不提倡這樣做),我們就認為模塊A依賴於模塊B,模塊A和模塊B之間發生了耦合。

3.關聯(Dependency)

關聯是一種結構化的關係,指一種對象和另一種對象有聯繫。給定有關聯的兩個類,可以從一個類的對象得到另一個類的對象。UML類圖中關聯有兩元關係和多元關係。兩元關係是指一種一對一的關係,多元關係是一對多或多對一的關係。一般用實線連接有關聯的同一個類或不同的兩個類。當你想要表示結構化關係時使用關聯。

關聯關係是通過類的成員變量來實現的。

3.1聚合(Aggregation)

聚合是一種特殊的關聯。它描述了「hasa」關係,表示整體對象擁有部分對象。

關聯關係和聚合關係來語法上是沒辦法區分的,從語義上才能更好的區分兩者的區別。聚合是較強的關聯關係,強調的是整體與部分之間的關係。

與關聯關係一樣,聚合關係也是通過類的成員變量來實現的。

3.2組合(Composition)

組合是聚合的一種形式,它具有更強的擁有關係,強調整體與部分的生命周期是一致的。整體負責部分的生命周期的管理。如果整體被銷毀,部分也必須跟著一起被銷毀,如果所有者被複製,部分也必須一起被複製。

與關聯關係一樣,組合關係也是通過類的成員變量來實現的。

聚合和組合的區別在於:聚合關係是「has-a」關係,組合關係是「contains-a」關係;聚合關係表示整體與部分的關係比較弱,而組合比較強;聚合關係中代表部分事物的對象與代表聚合事物的對象的生存期無關,一旦刪除了聚合對象不一定就刪除了代表部分事物的對象。組合中一旦刪除了組合對象,同時也就刪除了代表部分事物的對象。

4.實現(Realization)

UML類圖中第四種關係就是實現,實現關係指定兩個實體之間的一個合約。換言之,一個實體定義一個合約,而另一個實體保證履行該合約。

類間關係有很多種,在大的類別上可以分為兩種:縱向關係、橫向關係。

縱向關係就是繼承關係,它的概念非常明確,也成為OO的三個重要特徵之一,這裡不過多的討論。

橫向關係較為微妙,按照UML的建議大體上可以分為四種:

依賴(Dependency)

關聯(Association)

聚合(Aggregation)

組合(Composition)

它們的強弱關係是沒有異議的:依賴<關聯<聚合<組合<泛化(繼承)

在UML系統開發中有三個主要的模型:
功能模型:從用戶的角度展示系統的功能,包括用例圖。
對象模型:採用對象,屬性,操作,關聯等概念展示系統的結構和基礎,包括UML類圖。
動態模型:展現系統的內部行為。包括序列圖,活動圖,狀態圖。

【編輯推薦】

  1. 利用UML類圖進行系統建模技巧詳談
  2. 使用UML類圖進行Java應用程式設計
  3. UML用例圖用法實例剖析
  4. 術語彙編 UML統一建模語言簡介
  5. 利用UML類圖設計Java應用程式詳解


【責任編輯:

程華權

TEL:(010)68476606】

點讚 0

相關焦點

  • 深入剖析UML類圖依賴關係
    深入剖析UML類圖依賴關係 UML類中有泛化,依賴,關係,和聚集等關係,你是否都熟悉,這裡就向大家介紹一下UML類圖依賴關係,希望通過本文的學習你對UML類圖有更深入的認識。
  • UML對象圖和類圖關係解析
    UML對象圖和類圖關係解析 UML共有九種視圖,它們之間各有自己的特點和作用,它們之間有什麼聯繫嗎,這裡就向大家介紹一下UML對象圖和UML類之間的聯繫,希望通過本文的學習你對UML的圖形之間的關係有一定的認識。
  • 深入剖析靜態UML模型圖
    在有的文獻書籍中,將這九種UML模型圖分為三大類:結構分類、動態行為和模型管理,結構分類包括用例圖、類圖、對象圖、構件圖和部署圖,動態行為包括狀態圖、活動圖、順序圖和協作圖,模型管理則包含類圖。本文則從動態和靜態的角度分別介紹UML的九種UML模型圖。
  • 看懂UML類圖和時序圖
    一起學習、成長、溫情的熱愛生活圖丨pexels這裡不會將UML的各種元素都提到,我只想講講類圖中各個類之間的關係;能看懂類圖中各個類之間的線條、箭頭代表什麼意思後,也就足夠應對日常的工作和交流;同時,我們應該能將類圖所表達的含義和最終的代碼對應起來
  • UML中關聯,組合與聚合等關係的辨析
    UML中關聯,組合與聚合等關係的辨析 以前學習面向對象的時候,常聽到介紹對象之間的各種關係,常見的有關聯,組合與聚合。下面我們分別介紹它們之間的關係。
  • UML解惑:圖說UML中的六大關係
    這裡給出這六種主要UML關係的說明和類圖描述,一看之下,清晰明了;以下就分別介紹這幾種關係:    繼承    指的是一個類(稱為子類、子接口)繼承另外的一個類(稱為父類、父接口)的功能,並可以增加它自己的新功能的能力,繼承是類與類或者接口與接口之間最常見的關係;在Java中此類關係通過關鍵字extends明確標識,在設計時一般沒有爭議性;
  • UML建模工具中的五大視圖
    ,用例圖由執行者和用例組成(執行者對系統做什麼的)執行者主要可分為四類:主要執行者–直接與系統交互的人,次要執行者–涉及到系統維護的人,外部硬體–運行應用的非計算機的系統部分,其他系統–為其工作需要與你系統交互的外部系統4.結構視圖UML建模工具中結構視圖代表系統的靜態方面,包含類圖(描述不同的類和它們的關聯,描述系統中聲明的類
  • 六種UML圖關係的表示及在代碼中體現
    六種UML圖關係的表示及在代碼中體現 UML圖有很多值得學習的地方,你對UML圖關係是否熟悉呢,本文就向大家介紹一下六種UML圖關係——表示及在代碼中體現,希望本文介紹對你有所幫助。
  • UML實例:ATM的狀態圖 活動圖和協作圖詳解
    因為是簡化了的例子,所以除了等待顧客插入磁卡的起始狀態和結束服務的終止狀態,顧客會處於輸入密碼、選擇服務類型、存款及取款四種狀態。下面我們看一下UML實例ATM中的活動圖。1.5活動圖圖1.5參考了RandyMiller的《AHands-OnIntroductionforDevelopers》一文,1.3圖中的客戶管理和事物管理對應於1.5圖中的Bank,圖1.3中的讀卡機、顯示、輸入設備及點鈔機對應於5.5圖中的ATMMachina,銀行儲戶就是Customer。
  • UML圖形中UML狀態圖和組件圖用法實例解析
    UML圖形中UML狀態圖和組件圖用法實例解析 本文向大家介紹一下UML圖形中的UML狀態圖和組件圖,這兩種圖各有各的特點和作用,相信通過本文的介紹你一定會有不少收穫。
  • 基於UML的校園一卡通管理系統的分析與設計
    其中靜態結構定義了系統中的重要對象的屬性和操作以及這些對象之間的相互關係,而動態行為定義了對象的時間特性和對象為完成目標而相互進行通信的機制。標準建模語言UML 的主要內容也可以歸納為靜態建模機制和動態建模機制兩大類[1 。2] 從應用的角度看,當採用面向對象技術設計系統時,首先是描述需求,其次根據需求建立系統的靜態模型,以構造系統的結構,第三步是描述系統的行為。
  • 解析UML動態建模中消息 狀態圖和順序圖
    1.消息在面向對象技術中,對象間的交互是通過對象間消息的傳遞來完成的。在UML的四個動態模型中均用到消息這個概念。通常,當一個對象調用另一個對象中的操作時,即完成了一次消息傳遞。當操作執行後,控制便返回到調用者。對象通過相互間的通信(消息傳遞)進行合作,並在其生命周期中根據通信的結果不斷改變自身的狀態。
  • 系統架構——掌握和使用UML包圖模型
    UML的包圖模型類似Package結構,不同的是UML包圖模型僅描述Package高層次的模塊間關係,對於較低層的模塊一般不涉及,這些較低層的模塊一般通過設計類圖來描述。UML包圖屬於高層設計模型。當我們使用包圖模型設計一個複雜系統時。首先要將系統進行功能分解,把一個大的系統劃分為多個子系統。
  • 深入剖析新能源汽車絕緣檢測
    今天在這裡與大家探討一下新能源汽車絕緣檢測的方法、設計難點及其優缺點,重點剖析基於電橋法的絕緣檢測,希望對大家能有所幫助。在我的上篇文章《高壓需謹慎之深入剖析新能源汽車高壓系統需求及設計》裡,已經提到絕緣檢測是整車高壓安全的需求而來。絕緣檢測功能是整車非常重要的一項功能,更是新能源汽車的標誌性功能。
  • ER(實體關係)建模入門指引
    提升抽象、歸納能力:ER建模從系統的實體出發,要得到一個有意義的實體關係模型,要求我們對業務進行深入分析,從業務流程、業務表象中歸納並抽象出核心的實體。 圖形化溝通,提升效率:ER圖可以幫助產品經理向開發人員傳達系統主要核心實體及其關係,讓開發人員準確理解需求,並就合理性、擴展性等問題進行深入溝通。
  • Cell:科學家深入剖析並闡明大腦的結構
    圖片來源:medicalxpress.com2015年10月15日 訊 /生物谷BIOON/ --近日,一項發表於國際雜誌Cell上的研究論文中,文章中,研究者對小鼠的大腦進行圖像採集並且進行了流水線式的分析,Lichtman表示,其中讓我們驚奇的是,軸突通常會在相同的樹突位置產生兩個、三個甚至更多的突觸,而當前的理解表明,樹突棘(dendritic spines)可以儘可能地幫助收集許多不同軸突的神經元信息,然而本文中研究者卻發現,在很多情況下相同的軸突會在相同的樹突位置尋找不同的樹突棘。
  • 深入剖析環保PPP(三)汙水處理PPP的操作過程
    深入剖析環保PPP(三)汙水處理PPP的操作過程北極星水處理網訊:2015年11月26日,南京市城東、仙林汙水處理PPP項目分別與北控水務(中國)投資有限公司和北京碧水源科技股份有限公司正式籤署PPP項目合同,標誌著歷經八個多月兩項目終於落地。
  • 屋頂系統陰影計算方法的深入剖析(一)
    遮擋物的陰影和太陽的位置及屋面角度等都存在一定的空間幾何關係,因此有必要從理論上構建陰影模型探索其影長的本質,文中從數學角度得出了坡屋面上遮擋物的影長公式,並應用於圖1天窗北坡部分的影長計算,而對於天窗的南坡部分則介紹了基於公式的CAD測算法和PVSYST建模分析法,並將軟體計算的太陽方位角、高度角和同時刻的理論公式計算值進行了比較,同時也這幾種方法求出來的影長大小進行了比較。
  • 公務員行測考試:邏輯判斷中四種矛盾關係
    真假推理題目是邏輯判斷中的高頻考題,而真假推理題目的特點在於題幹中給出的諸多條件是真假不確定的,我們解決此類題目的關鍵點在於確定唯一一假或唯一一真的範圍,然後再根據其餘條件的真假來解題。確定唯一一真或唯一一假的方法有兩種:一種是找具有矛盾關係的兩個命題,一種是找具有反對關係的兩個命題。
  • 解析繪製UML用例圖的基本步驟
    繪製UML用例圖的基本步驟說明創建任何建模圖的詳細步驟在如何:編輯 UML 模型和關係圖中進行介紹。創建新的UML用例圖1.在「體系結構」菜單上,單擊「新建關係圖」。2.在「模板」下,單擊「UML 用例圖」。3.命名該關係圖。