前言
統(tǒng)一建模語(yǔ)言(Unified Modeling Language,UML)是用來(lái)設(shè)計(jì)軟件藍(lán)圖的可視化建模語(yǔ)言,1997 年被國(guó)際對(duì)象管理組織(OMG)采納為面向?qū)ο蟮慕UZ(yǔ)言的國(guó)際標(biāo)準(zhǔn)。它的特點(diǎn)是簡(jiǎn)單、統(tǒng)一、圖形化、能表達(dá)軟件設(shè)計(jì)中的動(dòng)態(tài)與靜態(tài)信息。
統(tǒng)一建模語(yǔ)言能為軟件開(kāi)發(fā)的所有階段提供模型化和可視化支持。而且融入了軟件工程領(lǐng)域的新思想、新方法和新技術(shù),使軟件設(shè)計(jì)人員溝通更簡(jiǎn)明,進(jìn)一步縮短了設(shè)計(jì)時(shí)間,減少開(kāi)發(fā)成本。它的應(yīng)用領(lǐng)域很寬,不僅適合于一般系統(tǒng)的開(kāi)發(fā),而且適合于并行與分布式系統(tǒng)的建模。
UML 從目標(biāo)系統(tǒng)的不同角度出發(fā),定義了用例圖、類(lèi)圖、對(duì)象圖、狀態(tài)圖、活動(dòng)圖、時(shí)序圖、協(xié)作圖、構(gòu)件圖、部署圖等 9 種圖。【百度百科】^[1]^
本文并不會(huì)對(duì)所有圖進(jìn)行分析。主要介紹開(kāi)發(fā)中常用的類(lèi)圖 時(shí)序圖 狀態(tài)圖。
類(lèi)圖
類(lèi)(Class)是指具有相同屬性、方法和關(guān)系的對(duì)象的抽象,它封裝了數(shù)據(jù)和行為,是面向?qū)ο蟪绦蛟O(shè)計(jì)(OOP)的基礎(chǔ),具有封裝性、繼承性和多態(tài)性等三大特性。在 UML 中,類(lèi)使用包含類(lèi)名、屬性和操作且?guī)в蟹指艟€的矩形來(lái)表示。
首先從動(dòng)物開(kāi)始
- 動(dòng)物是一個(gè)類(lèi) 動(dòng)物依賴氧氣和水
- 然后鳥(niǎo)繼承了動(dòng)物,所以鳥(niǎo)的父類(lèi)是動(dòng)物 所以鳥(niǎo)是屬于動(dòng)物
- 然后鳥(niǎo)和翅膀是組合關(guān)系 一只鳥(niǎo)有兩個(gè)翅膀
- 大雁鴨子和企鵝都是鳥(niǎo)所以繼承了鳥(niǎo)類(lèi)
- 大雁會(huì)有大雁群,大雁群是由大雁組成所以是聚合關(guān)系
- 企鵝和氣候是關(guān)聯(lián)關(guān)系因?yàn)槠簌Z需要依賴氣候
- 然后再看大雁 大雁會(huì)飛翔 所以就實(shí)現(xiàn)了飛翔接口
- 唐老鴨是屬于鴨子的 所以唐老鴨繼承了鴨子這個(gè)類(lèi)
上圖是借鑒了大話設(shè)計(jì)模式里面的圖。下面具體介紹各個(gè)箭頭符號(hào)的作用
首先介紹圖形
類(lèi)
類(lèi)一般是用三層矩形框表示,第一層表示類(lèi)的名稱(chēng),第二層表示的是字段和屬性,第三層則是類(lèi)的方法。第一層中,如果是抽象類(lèi),需用斜體顯示。
包
包(Package): 是一種常規(guī)用途的組合機(jī)制。在UML中用一個(gè)Tab框表示,Tab里寫(xiě)上包的名稱(chēng),框里則用來(lái)放一些其他子元素,比如類(lèi),子包等等。
接口
接口(interface):接口包含操作但不包含屬性,且它沒(méi)有對(duì)外界可見(jiàn)的關(guān)聯(lián)
關(guān)系
依賴
依賴(Dependency) 表示的是類(lèi)之間的調(diào)用關(guān)系。UML中用帶箭頭的虛線表示依賴關(guān)系,而箭頭所指的則是被依賴的類(lèi)。
泛化
泛化(Generalization): 表示的是類(lèi)之間的繼承關(guān)系,注意是子類(lèi)指向父類(lèi)。UML中用帶空心三角箭頭的實(shí)線表示泛化關(guān)系,箭頭指向的是一般個(gè)體。
關(guān)聯(lián)
關(guān)聯(lián)(Association) 表示的是類(lèi)與類(lèi)之間存在某種特定的對(duì)應(yīng)關(guān)系。UML中用雙向帶箭頭的虛線表示關(guān)聯(lián)關(guān)系,箭頭兩端為相互關(guān)聯(lián)的兩個(gè)類(lèi)。
聚合
聚合(Aggregation): 是關(guān)聯(lián)關(guān)系的一種特例,表示的是整體與部分之間的關(guān)系,部分不能離開(kāi)整體單獨(dú)存在。UML中用空心菱形頭的實(shí)線表示聚合關(guān)系,菱形頭指向整體
組合
組合(Composition): 是聚合的一種特殊形式,表示的是類(lèi)之間更強(qiáng)的組合關(guān)系。UML中用實(shí)心菱形頭的實(shí)線來(lái)表示組合,菱形頭指向整體。
類(lèi)符號(hào)
以上就是類(lèi)圖之間的關(guān)系符號(hào),還有就是在類(lèi)中+號(hào)是什么意思,其實(shí)不光有+號(hào)。
看上面的學(xué)生類(lèi)里面有五個(gè)屬性和兩個(gè)方法
+
號(hào)表示公共的 public-
表示 私有的 private#
表示protected
帶下劃線表示靜態(tài)屬性,一般表示方法+ 屬性:類(lèi)型。
下面是方法符號(hào)與上方相同+表示公共方法括號(hào)內(nèi)表示參數(shù):后面是返回類(lèi)型沒(méi)有默認(rèn)表示無(wú)返回值。
工具推薦
如果使用的是IDEA的話是直接可以看UML圖的,只不過(guò)會(huì)有一點(diǎn)變化。理解了上面的關(guān)系這些變化也能看的懂。
-
建模
+關(guān)注
關(guān)注
1文章
316瀏覽量
61484 -
UML
+關(guān)注
關(guān)注
0文章
122瀏覽量
31134 -
面向?qū)ο?/span>
+關(guān)注
關(guān)注
0文章
64瀏覽量
10104
發(fā)布評(píng)論請(qǐng)先 登錄

UML狀態(tài)圖和Petri網(wǎng)絡(luò)在類(lèi)測(cè)試用例生成的應(yīng)用
編寫(xiě)電視類(lèi)TV,UML類(lèi)圖和說(shuō)明
UML狀態(tài)圖在回歸測(cè)試中的應(yīng)用
基于UML的生成場(chǎng)景測(cè)試用例研究
基于UML的考試管理系統(tǒng)設(shè)計(jì)

UML類(lèi)圖之間的關(guān)系

什么是UML圖?常見(jiàn)的UML圖工具有哪些?

UML簡(jiǎn)介與類(lèi)圖詳解

UML圖學(xué)習(xí)筆記

UML的意義在于?

UML類(lèi)圖符號(hào)等詳細(xì)介紹

解析UML類(lèi)圖和時(shí)序圖

UML狀態(tài)圖詳解

UML時(shí)序圖詳解

評(píng)論