版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第四章:類圖和對(duì)象圖
UML系統(tǒng)分析與設(shè)計(jì)學(xué)習(xí)內(nèi)容類圖的概念類圖的組成創(chuàng)建類圖對(duì)象圖的概念創(chuàng)建類圖案例分析創(chuàng)建對(duì)象圖案例分析類圖的概念1.類圖的概念類圖(Classdiagram)顯示了系統(tǒng)的靜態(tài)結(jié)構(gòu),而系統(tǒng)的靜態(tài)結(jié)構(gòu)構(gòu)成了系統(tǒng)的概念基礎(chǔ)。類圖,就是用于對(duì)系統(tǒng)中的各種概念進(jìn)行建模,并描繪出它們之間關(guān)系的圖。在大多數(shù)的UML模型中,我們可以將這些概念的類型概括為以下四種,分別是:
1類2接口3數(shù)據(jù)類型4構(gòu)件類圖的概念在類圖中,具體來(lái)講它一共包含了以下幾種模型元素,分別是:類、接口、依賴關(guān)系、泛化關(guān)系、關(guān)聯(lián)關(guān)系以及實(shí)現(xiàn)關(guān)系。類圖可以創(chuàng)建約束、注釋和包等。類圖的概念2.類圖在項(xiàng)目開(kāi)發(fā)中的作用類圖的作用是對(duì)系統(tǒng)的靜態(tài)視圖進(jìn)行建模。當(dāng)對(duì)系統(tǒng)的靜態(tài)視圖進(jìn)行建模時(shí),通常是以以下三種方式來(lái)使用類圖。1.為系統(tǒng)的詞匯建模。2.模型化簡(jiǎn)單的協(xié)作。3.模型化邏輯數(shù)據(jù)庫(kù)模式。在設(shè)計(jì)數(shù)據(jù)庫(kù)時(shí),通常將數(shù)據(jù)庫(kù)模式看作為數(shù)據(jù)庫(kù)概念設(shè)計(jì)的藍(lán)圖,在很多領(lǐng)域中,都需要在關(guān)系數(shù)據(jù)庫(kù)或面向數(shù)據(jù)庫(kù)中存儲(chǔ)永久信息。系統(tǒng)分析者可以使用類圖來(lái)對(duì)這些數(shù)據(jù)庫(kù)進(jìn)行模式建模。類圖的組成類類是面向?qū)ο笙到y(tǒng)組織結(jié)構(gòu)的核心。類是對(duì)一組具有相同屬性、操作、關(guān)系和語(yǔ)義的事物的抽象。在UML的圖形表示中,類的表示法是一個(gè)矩形,這個(gè)矩形由三個(gè)部分構(gòu)成,分別是:類的名稱(Name)、類的屬性(Attribute)和類的操作(Operation)。類圖的組成類的名稱是每個(gè)類的圖形中所必須擁有的元素,用于同其它類進(jìn)行區(qū)分。類的名稱通常來(lái)自于系統(tǒng)的問(wèn)題域,并且盡可能地明確表達(dá)要描述的事物,不會(huì)造成類的語(yǔ)義沖突。類圖的組成屬性是類的一個(gè)特性,也是類的一個(gè)組成部分,描述了在軟件系統(tǒng)中所代表的對(duì)象具備的靜態(tài)部分的公共特征抽象,這些特性是這些的對(duì)象所共有的。在UML中,類的屬性的表示語(yǔ)法為([]內(nèi)的內(nèi)容是可選的):[可見(jiàn)性]屬性名稱[:屬性類型][=初始值][{屬性字符串}]
類圖的組成類的操作指的是類的所能執(zhí)行的操作,也是類的一個(gè)重要組成部分,描述了在軟件系統(tǒng)中所代表對(duì)象具備的動(dòng)態(tài)部分的公共特征抽象。操作由一個(gè)返回類型、一個(gè)名稱以及參數(shù)表來(lái)描述。其中,返回類型、名稱和參數(shù)一起被稱為操作簽名(SignatureoftheOperation)。操作簽名描述了使用該操作所必需的所有信息。在UML中,類的操作的表示語(yǔ)法為([]內(nèi)的內(nèi)容是可選的):[可見(jiàn)性]操作名稱[(參數(shù)表)][:返回類型][{屬性字符串}]類圖的組成在標(biāo)準(zhǔn)的UML定義中,有時(shí)還應(yīng)當(dāng)指明類的另一種信息,那就是類的職責(zé)。類的職責(zé)指的是對(duì)該類的所有對(duì)象所具備的那些相同的屬性和操作共同組成的功能或服務(wù)的抽象。在聲明類的職責(zé)的時(shí)候,可以非正式的在類圖的下方增加一欄,將該類的職責(zé)逐條描述出來(lái)。類的職責(zé)的描述并不是必須的,因此也可以將其作為文檔的形似存在,也就是說(shuō)類的職責(zé)其實(shí)只是一段或多段文本描述。一個(gè)類可以有多種職責(zé),設(shè)計(jì)得好的類一般至少有一種職責(zé)。類圖的組成類的約束指定了該類所要滿足的一個(gè)或多個(gè)規(guī)則。在UML中,約束是用一個(gè)大括號(hào)括起來(lái)的文本信息。類圖的組成類的注釋類圖的組成2.接口類接口是在沒(méi)有給出對(duì)象的實(shí)現(xiàn)和狀態(tài)的情況下對(duì)對(duì)象行為的描述。通常,在接口中包含一系列操作但是不包含屬性,并且它沒(méi)有對(duì)外界可見(jiàn)的關(guān)聯(lián)。接口是一種特殊的類,所有接口都是有構(gòu)造型<<interface>>的類。一個(gè)類可以通過(guò)實(shí)現(xiàn)接口從而支持接口所指定的行為。在UML中,接口的表示方式是使用一個(gè)帶有名稱的小圓圈來(lái)進(jìn)行表示的,并且我們可以通過(guò)一條Realize(實(shí)現(xiàn)關(guān)系)線與實(shí)現(xiàn)它的類相連接
類圖的組成3.類之間的關(guān)系依賴關(guān)系:表示的是兩個(gè)或多個(gè)模型元素之間語(yǔ)義上的連接關(guān)系。它只將模型元素本身連接起來(lái)而不需要用一組實(shí)例來(lái)表達(dá)它的意思。它表示了這樣一種情形,提供者的某些變化會(huì)要求或指示依賴關(guān)系中客戶的變化。也就是說(shuō)依賴關(guān)系將二個(gè)類聯(lián)系起來(lái),其中一個(gè)類會(huì)影響另一個(gè)類的行為和實(shí)現(xiàn)。類圖的組成泛化關(guān)系是用來(lái)描述類的一般和具體之間的關(guān)系。具體描述建立在對(duì)類的一般描述的基礎(chǔ)之上,并對(duì)其進(jìn)行了擴(kuò)展。因此,在具體描述中不僅包含一般描述中所擁有的所有特性、成員和關(guān)系,而且還包含了具體描述補(bǔ)充的信息。類圖的組成關(guān)聯(lián)關(guān)系是一種結(jié)構(gòu)關(guān)系,指出了一個(gè)事物對(duì)象與另一個(gè)事物對(duì)象之間的語(yǔ)義上的連接。關(guān)聯(lián)描述了系統(tǒng)中對(duì)象或?qū)嵗g的離散連接,它將一個(gè)含有兩個(gè)或多個(gè)有序表的類,在允許復(fù)制的情況下連接起來(lái)。一個(gè)類關(guān)聯(lián)的任何一個(gè)連接點(diǎn)都叫做關(guān)聯(lián)端,與類有關(guān)的許多信息都附在它的端點(diǎn)上。關(guān)聯(lián)端有名稱、角色、可見(jiàn)性以及多重性等特性。類圖的組成實(shí)現(xiàn)關(guān)系將一種模型元素(如類)與另一種模型元素(如接口)連接起來(lái),是說(shuō)明和其實(shí)現(xiàn)之間的關(guān)系。在實(shí)現(xiàn)關(guān)系中,接口只是行為的說(shuō)明而不是結(jié)構(gòu)或者實(shí)現(xiàn),而類中則要包含了其具體的實(shí)現(xiàn)內(nèi)容,可以通過(guò)一個(gè)或多個(gè)類實(shí)現(xiàn)一個(gè)接口,但是每個(gè)類必須分別實(shí)現(xiàn)接口中的操作。雖然實(shí)現(xiàn)關(guān)系意味著要有像接口這樣的說(shuō)明元素,它也可以用一個(gè)具體的實(shí)現(xiàn)元素來(lái)暗示它的說(shuō)明(而不是它的實(shí)現(xiàn))必須被支持。創(chuàng)建類圖1.創(chuàng)建類
1.在圖形編輯工具欄中,選擇按鈕,此時(shí)光標(biāo)變?yōu)椤埃碧?hào)。
2.在類圖中單擊選擇任意一個(gè)位置,系統(tǒng)在該位置創(chuàng)建一個(gè)新類。系統(tǒng)產(chǎn)生的默認(rèn)名稱為“NewClass”。
3.在類的名稱欄中,顯示了當(dāng)前所有的類的名稱,我們可以選擇清單中的現(xiàn)有類,這樣便把在模型中存在的該類添加到類圖中。如果創(chuàng)建新類,將“NewClass”重新命名成新的名稱即可。創(chuàng)建類圖2.創(chuàng)建類之間的關(guān)系
(1)創(chuàng)建和刪除依賴關(guān)系。(2)創(chuàng)建和刪除泛化關(guān)系。(3)創(chuàng)建和刪除實(shí)現(xiàn)關(guān)系。(4)創(chuàng)建和刪除關(guān)聯(lián)關(guān)系。對(duì)象圖的概念對(duì)象圖的概念對(duì)象圖中包含對(duì)象(Object)和鏈(Link)。其中對(duì)象是類的特定實(shí)例,鏈?zhǔn)穷愔g關(guān)系的實(shí)例,表示對(duì)象之間的特定關(guān)系。對(duì)象圖的概念1.對(duì)象圖的組成對(duì)象圖(ObjectDiagram)是由對(duì)象(Object)和鏈(Link)組成的。對(duì)象圖的目的在于描述系統(tǒng)中參與交互的各個(gè)對(duì)象在某一時(shí)刻是如何運(yùn)行的。對(duì)象圖的概念2.對(duì)象圖在項(xiàng)目開(kāi)發(fā)中的作用對(duì)象圖作為系統(tǒng)在某一時(shí)刻的快照,是類圖中的各個(gè)類在某一個(gè)時(shí)間點(diǎn)上的實(shí)例及其關(guān)系的靜態(tài)寫(xiě)照,可以通過(guò)以下幾個(gè)方面來(lái)說(shuō)明它的作用:1.說(shuō)明復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。對(duì)于復(fù)雜的數(shù)據(jù)結(jié)構(gòu),有時(shí)候很難對(duì)其進(jìn)行抽象成類表達(dá)之間的交互關(guān)系。使用對(duì)象描繪對(duì)象之間的關(guān)系可以幫助我們說(shuō)明復(fù)雜的數(shù)據(jù)結(jié)構(gòu)某一時(shí)刻的快照,從而有助于對(duì)復(fù)雜數(shù)據(jù)結(jié)構(gòu)的抽象。2.表示快照中的行為。通過(guò)一系列的快照,可以有效表達(dá)事物的行為。創(chuàng)建對(duì)象圖2.創(chuàng)建對(duì)象圖在RationalRose2003中不直接支持對(duì)象圖的創(chuàng)建,但是我們可以利用協(xié)作圖來(lái)創(chuàng)建。在協(xié)作圖中添加對(duì)象的步驟如下:1.在協(xié)作圖的圖形編輯工具欄中,選擇按鈕,此時(shí)光標(biāo)變?yōu)椤埃碧?hào)。2.在類圖中單擊選擇任意一個(gè)位置,系統(tǒng)在該位置創(chuàng)建一個(gè)新的對(duì)象。3.雙擊該對(duì)象的圖標(biāo),彈出對(duì)象的規(guī)范設(shè)置窗口。4.在對(duì)象的規(guī)范設(shè)置窗口中,可以設(shè)置對(duì)象的名稱、類的名稱、持久性和是否多對(duì)象等。5.點(diǎn)擊“OK”按鈕即可。在協(xié)作圖中添加對(duì)象與對(duì)象之間的鏈的步驟如下:1.選擇工具欄中的協(xié)作圖圖形編輯工具欄中的圖標(biāo),或者選擇菜單欄“Tools”(工具)中“Create”(新建)下的“ObjectLink”選項(xiàng),此時(shí)的光標(biāo)變?yōu)椤啊狈?hào)。2.單擊需要鏈接的對(duì)象。3.將鏈的線段拖動(dòng)到要與鏈接的對(duì)象中。4.雙擊鏈的線段,彈出設(shè)置鏈規(guī)范的對(duì)話框。5.在彈出的對(duì)話框中,在“General”選項(xiàng)卡中設(shè)置鏈的名稱、關(guān)聯(lián)、角色以及可見(jiàn)性等。6.如需要在對(duì)象的兩端添加消息,可以在“Messages”選項(xiàng)卡中進(jìn)行設(shè)置。創(chuàng)建類圖案例分析1.確定類和關(guān)聯(lián)用例圖實(shí)質(zhì)上是一種系統(tǒng)描述的形式,自然可以根據(jù)用例描述來(lái)識(shí)別類。針對(duì)各個(gè)用例,通??梢愿鶕?jù)如下的問(wèn)題輔助識(shí)別:1.用例描述中出現(xiàn)了那些實(shí)體?2.用例的完成需要哪些實(shí)體合作?3.用例執(zhí)行過(guò)程中會(huì)產(chǎn)生并存儲(chǔ)哪些信息?4.用例要求與之關(guān)聯(lián)的每個(gè)角色的輸入是什么?5.用例反饋與之關(guān)聯(lián)的每個(gè)角色的輸出是什么?6.用例需要操作哪些硬設(shè)備?創(chuàng)建類圖案例分析聊天系統(tǒng)由客戶端和服務(wù)器端二個(gè)部分組成,提供了包括注冊(cè)、客戶登錄、添加好友、刪除好友、私聊、群聊、好友上下線提示和用戶管理的功能,這些功能是由三層組成,即界面類、控制類和相應(yīng)的實(shí)體類信息類。根據(jù)這些功能中的名詞可以基本的識(shí)別出客戶端按系統(tǒng)要求可以抽象出如下十個(gè)類:消息實(shí)體類(Message):用于描述在客戶端和服務(wù)器端間所傳遞的消息對(duì)象。用戶實(shí)體類(User):用于描述用戶的信息。登錄界面類(LoginForm):主要用戶描述操作登錄的操作界面。注冊(cè)界面類(RegisterForm):主要用于描述用戶注冊(cè)的操作界面??蛻舳酥鞔翱陬悾–lientMainForm):主要描述客戶端的主界面。新增好友界面類(AddFriendForm):主要描述新增好友的操作界面。修改用戶信息界面類(ModifyUserForm):主要描述修改用戶信息的操作界面。聊天界面類(ChatForm):主要描述用戶進(jìn)行聊天的操作界面??蛻舳斯ぷ黝悾–lient):主要處理客戶端與服務(wù)器的通信,它屬于控制類。窗口基類(Form):所有操作界面的基類。創(chuàng)建類圖案例分析確定了客戶端的類后,就要從中找到它們之間的關(guān)系,執(zhí)行分析這些類之后,可以發(fā)現(xiàn)它們之間存在著如下關(guān)系:關(guān)聯(lián)關(guān)系所有的操作界面類與Client類之間就是一種普通的關(guān)聯(lián)關(guān)系;Client類要使用Message類進(jìn)行網(wǎng)絡(luò)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度中小企業(yè)成長(zhǎng)借款合同4篇
- 2025年華東師大版七年級(jí)歷史下冊(cè)月考試卷
- 二零二五年度環(huán)保車庫(kù)租賃及綠色能源服務(wù)合同4篇
- 2025年北師大新版八年級(jí)物理下冊(cè)階段測(cè)試試卷
- 2025年上教版七年級(jí)生物下冊(cè)月考試卷含答案
- 2025年外研版七年級(jí)生物上冊(cè)階段測(cè)試試卷
- 2025年滬科版七年級(jí)地理下冊(cè)月考試卷
- 二零二五版孔萍與李明子女撫養(yǎng)權(quán)及贍養(yǎng)費(fèi)協(xié)議3篇
- 2025年華師大版七年級(jí)地理下冊(cè)月考試卷含答案
- 2025年華師大版八年級(jí)科學(xué)上冊(cè)月考試卷
- 獅子王影視鑒賞
- DB13(J)T 8434-2021 民用建筑節(jié)能門窗工程技術(shù)標(biāo)準(zhǔn)(京津冀)
- 2024年在職申碩同等學(xué)力英語(yǔ)真題試卷題后含答案及解析4
- 預(yù)防溺水六不準(zhǔn)中小學(xué)生防溺水安全教育宣傳課件可編輯課件
- 學(xué)校廚房設(shè)備投標(biāo)方案(技術(shù)方案)
- 一年級(jí)數(shù)學(xué)加減法口算題每日一練(25套打印版)
- 電力系統(tǒng)中的虛擬電廠運(yùn)營(yíng)與管理考核試卷
- Starter Unit 3 同步練習(xí)人教版2024七年級(jí)英語(yǔ)上冊(cè)
- 風(fēng)力發(fā)電收購(gòu)協(xié)議書(shū)
- 大學(xué)生無(wú)人機(jī)創(chuàng)業(yè)計(jì)劃書(shū)
- 2024年甘肅省武威市、嘉峪關(guān)市、臨夏州中考英語(yǔ)真題
評(píng)論
0/150
提交評(píng)論