自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

學(xué)習(xí)筆記 實(shí)例解析UML對(duì)象關(guān)系

開發(fā) 架構(gòu)
UML對(duì)象關(guān)系你是否熟悉,在學(xué)習(xí)UML的過程中你可能會(huì)遇到此類問題,這里和大家分享一下UML對(duì)象關(guān)系學(xué)習(xí)總結(jié),希望對(duì)你的有所幫助。

本文和大家重點(diǎn)討論一下UML對(duì)象關(guān)系方面的知識(shí),主要包括關(guān)聯(lián)關(guān)系,聚合關(guān)系,組合關(guān)系等,相信通過本文的學(xué)習(xí)你對(duì)UML對(duì)象關(guān)系一定會(huì)有深刻的認(rèn)識(shí)。

UML對(duì)象關(guān)系學(xué)習(xí)總結(jié)

【UML對(duì)象關(guān)系之關(guān)聯(lián)關(guān)系】

關(guān)聯(lián)關(guān)系是一種最簡(jiǎn)單、最抽象的對(duì)象間關(guān)系描述。它只是描述了對(duì)象A于對(duì)象B之間存在一種業(yè)務(wù)上、概念上的邏輯關(guān)系,但是關(guān)聯(lián)關(guān)系的雙方不包含對(duì)方的屬性。

【UML對(duì)象關(guān)系之聚合關(guān)系】

聚合關(guān)系是一種特殊的關(guān)聯(lián)關(guān)系,除了具備關(guān)聯(lián)關(guān)系的特性之外,還包括了以下的一些規(guī)則:

A.對(duì)象A和對(duì)象B之間存在一種包含的關(guān)系

B.對(duì)象A和對(duì)象B之間必有一方為“容器”,另外一方為“元素”。即“whole-part”關(guān)系

C.容器方和元素方對(duì)象的生命周期是彼此獨(dú)立的,并不依賴于對(duì)方而存在,也就是說是一

種“松散”的關(guān)聯(lián)。容器和元素可以被獨(dú)立創(chuàng)建、銷毀,容器不存在了不影響元素的存在,元素不存在了容器可以依然存在

D.容器方可以沒有元素,也可以有一個(gè)至多個(gè)元素

E.元素方可以“被包含于”一個(gè)容器,也可以“被包含于”多個(gè)容器

F.向容器添加元素,或者從容器中移除元素并不影響容器

【UML對(duì)象關(guān)系之組合關(guān)系】

組合關(guān)系是一種特殊的聚合關(guān)系,除了具備關(guān)聯(lián)關(guān)系、聚合關(guān)系的特性之外,還包括了以下的一些規(guī)則:

A.容器方和元素方對(duì)象的生命周期是互相依賴的。即元素依賴于容器而存在,一旦容器不存在了那么元素也就不可能存在。容器必須優(yōu)先于元素而被創(chuàng)建,元素必須優(yōu)先于容器而被銷毀。

B.元素方只能“被包含于”一個(gè)容器

【UML對(duì)象關(guān)系之舉例分析】

A.關(guān)聯(lián)關(guān)系的例子分析:

學(xué)生-------------成績(jī)

學(xué)生與成績(jī)之間就是一個(gè)關(guān)聯(lián)關(guān)系,你不能把學(xué)生的屬性寫到成績(jī)對(duì)象中去,同理不能把成績(jī)的屬性寫到學(xué)生對(duì)象中去,但兩者之間確實(shí)存在一種業(yè)務(wù)上的聯(lián)系,而且是固定的

B.聚合關(guān)系的例子分析:

班級(jí)-------------學(xué)生/汽車-------------配件

班級(jí)與學(xué)生,汽車與配件之間的關(guān)系就是一個(gè)聚合關(guān)系。首先一個(gè)班級(jí)可以包含零至多個(gè)學(xué)生,一部汽車可以包含零(未組裝之前)至多個(gè)配件。

其次學(xué)生可以先被創(chuàng)建,然后創(chuàng)建班級(jí),再向班級(jí)中添加,移除學(xué)生。配件可以先被創(chuàng)建并保存到倉(cāng)庫(kù),然后再組裝成汽車。在班級(jí),汽車對(duì)象沒有形成之前,學(xué)生與配件的對(duì)

象可以已經(jīng)存在(即容器和元素對(duì)象的生命周期是獨(dú)立的)

C.組合關(guān)系的例子分析:

基金賬戶-------------單筆交易

基金賬戶與單筆交易就是一個(gè)組合關(guān)系。首先單筆交易必須依賴于基金賬戶而存在,也就是說我們必須先創(chuàng)建基金賬戶這個(gè)“容器方”,之后才能夠創(chuàng)建單筆交易這個(gè)“元素方”,然后再把單筆交易掛到(添加)基金賬戶下。沒有基金賬戶預(yù)先存在,我們不能執(zhí)行單筆交易。我們不能先創(chuàng)建單筆交易,再創(chuàng)建基金賬戶,然后再掛靠交易。

這一點(diǎn)就不同于上面的班級(jí)與學(xué)生,汽車與配件的存在關(guān)系了。

其次單筆交易只能掛靠在某一個(gè)特定的基金賬戶下,也就是說元素方只能“被包含于一個(gè)”容器

【UML對(duì)象關(guān)系之延伸思考】

在對(duì)象和對(duì)象之間的關(guān)系中,有時(shí)會(huì)提到“依賴”關(guān)系,即對(duì)象A依賴于對(duì)象B而完成某項(xiàng)操作,那么這種關(guān)系是不是也屬于“關(guān)聯(lián)關(guān)系”呢?

個(gè)人認(rèn)為這不屬于一種“關(guān)聯(lián)關(guān)系”。因?yàn)樯厦嫖覀兲岬降娜N關(guān)系中,每一種關(guān)系除了是固定的關(guān)系之外,還有一個(gè)重要的特點(diǎn)就是這些關(guān)系是需要“被持久化,被保存”起來的。

而依賴關(guān)系只是對(duì)象和對(duì)象之間的引用(或稱調(diào)用)關(guān)系,這種關(guān)系只發(fā)生在運(yùn)行期間而不是業(yè)務(wù)上,概念上的聯(lián)系,并不需要被保存。所以“依賴關(guān)系”并不屬于UML中的對(duì)象關(guān)系。

【編輯推薦】

  1. 實(shí)例剖析UML對(duì)象關(guān)系
  2. UML對(duì)象關(guān)系學(xué)習(xí)總結(jié)
  3. 三大UML對(duì)象關(guān)系解析
  4. 最好UML建模工具的選擇標(biāo)準(zhǔn)解析
  5. UML用戶指南--UML公共機(jī)制簡(jiǎn)介

 

責(zé)任編輯:佚名 來源: csdn.net
相關(guān)推薦

2010-06-28 18:44:54

UML對(duì)象圖

2010-06-17 18:57:11

UML對(duì)象關(guān)系

2010-06-17 18:47:18

UML對(duì)象關(guān)系

2010-06-29 18:58:23

UML面向?qū)ο蠹夹g(shù)

2010-07-12 10:15:11

UML對(duì)象圖

2010-06-12 13:08:51

UML全稱

2009-07-20 13:27:01

UML對(duì)象關(guān)系

2010-07-07 14:09:05

UML用例圖

2010-06-28 15:41:17

UML圖類型

2010-06-18 17:49:34

UML面向?qū)ο蠹夹g(shù)

2010-06-13 12:49:23

UML及建模

2010-06-11 18:09:26

UML對(duì)象圖

2010-07-05 09:48:00

UML類關(guān)系圖

2010-07-06 10:41:22

UML對(duì)象及關(guān)系圖

2010-07-09 16:45:26

UML面向?qū)ο?/a>

2010-07-12 15:16:29

UML關(guān)聯(lián)

2010-06-30 10:30:29

UML動(dòng)態(tài)建模

2010-06-13 10:19:24

面向?qū)ο蠹夹g(shù)與UML

2010-06-18 09:29:37

UML與Rationa

2010-06-28 18:36:06

UML協(xié)作圖
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)