溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何掌握UML類圖

發(fā)布時(shí)間:2021-10-26 11:35:36 來源:億速云 閱讀:194 作者:iii 欄目:web開發(fā)

這篇文章主要介紹“如何掌握UML類圖”,在日常操作中,相信很多人在如何掌握UML類圖問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”如何掌握UML類圖”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

鄉(xiāng)村愛情類圖學(xué)習(xí)

UML(Unified Modeling  Language),是一種面向?qū)ο笤O(shè)計(jì)的建模工具,建模的核心是模型,模型是現(xiàn)實(shí)的簡(jiǎn)化、真實(shí)的抽象。

在 UML 中,所有的描述包括:事務(wù)、關(guān)系、圖這三部分構(gòu)件組成,如下圖為所有構(gòu)件的關(guān)系。

如何掌握UML類圖

UML 構(gòu)件關(guān)系圖,來自設(shè)計(jì)模式

接下來,我們就著重講解UML中的類圖關(guān)系,在鄉(xiāng)村愛情人物里的體現(xiàn)。

1. 類圖模型

UML 類圖(Class Diagrams),是使用頻率最高的 UML  圖之一,類圖可以表示出類、接口和它們之間的協(xié)作關(guān)系。各個(gè)接口、類、屬性、方法,可以用如下方式表達(dá)。

如何掌握UML類圖


UML 類圖中,接口、類、屬性、方法,表達(dá)方式

2. 繼承關(guān)系代碼

public class 謝廣坤 { private String 輩分; public void 作妖(){}}public class 謝永強(qiáng)  extends 謝廣坤 {}public class 謝飛機(jī) extends 謝廣坤 {}

類圖

如何掌握UML類圖

UML類圖,繼承關(guān)系

  • 功能:繼承關(guān)系

  • 概念:繼承(Generaliztion)又叫泛化,用于表示子類繼承父類的所有功能。

  • 場(chǎng)景:謝廣坤的作妖技能,謝永強(qiáng)和謝飛機(jī)繼承。謝飛機(jī)繼承的更好,更能作。

3. 實(shí)現(xiàn)關(guān)系

代碼

public interface 舞術(shù) {     void 招式(); }  public class 劉能 implements 舞術(shù) {     private String 來將姓名;     public void 招式() {     } }  public class 趙四 implements 舞術(shù) {     private String 來將姓名;     public void 招式() {     } }

類圖

如何掌握UML類圖

UML類圖,實(shí)現(xiàn)關(guān)系

  • 功能:實(shí)現(xiàn)關(guān)系

  • 概念:接口、抽象類聲明的方法,由類實(shí)現(xiàn)(Realiztion)其功能。

  • 場(chǎng)景:在趙四和劉能的一場(chǎng)比舞中,趙四花式走位,被劉能找準(zhǔn)時(shí)機(jī)一踢撂倒。

4. 組合關(guān)系

代碼

public class 結(jié)婚證 {      private 趙玉田 男方;     private 劉英 女方;      public void set男方(趙玉田 男方) {         this.男方 = 男方;     }      public void set女方(劉英 女方) {         this.女方 = 女方;     } }  public class 趙玉田 {      private int 年齡;     private String 性別;  }  public class 劉英 {      private int 年齡;     private int 性別;  }

類圖

如何掌握UML類圖

UML類圖,組合關(guān)系

功能:組合關(guān)系

概念:組合(Combination)關(guān)系表示類中整體與部分的關(guān)系,整體與部分相依相存。

場(chǎng)景:趙玉田和劉英的結(jié)婚證,缺一不可。

5. 聚合關(guān)系代碼

public class 山莊 {      private 宋曉峰 曉峰;     private 李寶庫 寶庫;      public void 藥膳房(李寶庫 寶庫) {         this.寶庫 = 寶庫;     }      public void 保安部(宋曉峰 曉峰) {         this.曉峰 = 曉峰;     }  }  public class 李寶庫 {      private String 職業(yè);  }  public class 宋曉峰 {      private String 職業(yè);  }

類圖

如何掌握UML類圖

UML類圖,聚合關(guān)系

  • 功能:聚合關(guān)系

  • 概念:聚合(Aggregate)關(guān)系,也是用于表示對(duì)象的整體和部分,但成員對(duì)象可以與整體對(duì)象分離獨(dú)立存在。

  • 場(chǎng)景:在?山莊中藥膳方有李寶庫、保安部有宋曉峰。但李寶庫和宋曉峰都只是其中的一員,都可以離開山莊。

6. 關(guān)聯(lián)關(guān)系

代碼

public class 豆腐廠 {     private 王小蒙 員工;     public void 添加員工(王小蒙 小蒙){         this.員工 = 小蒙;     } }  public class 王小蒙 {     private 豆腐廠 企業(yè);     public void 添加企業(yè)(豆腐廠 豆腐廠){         this.企業(yè) = 豆腐廠;     }  }

類圖

如何掌握UML類圖

UML類圖,關(guān)聯(lián)關(guān)系

  • 功能:關(guān)聯(lián)關(guān)系

  • 概念:關(guān)聯(lián)(Association)關(guān)系,是類之間常用的一種關(guān)系,表示一類對(duì)象與另一類對(duì)象的聯(lián)系。組合、聚合也屬于這種關(guān)系,但關(guān)聯(lián)關(guān)系更弱。

  • 場(chǎng)景:豆腐廠里有王小蒙,但豆腐廠里又不只是有王小蒙,還有王老七。即使小蒙不在,豆腐廠也可以正常運(yùn)行。而王小蒙還有自己的其他企業(yè),所以這屬于一種關(guān)聯(lián)關(guān)系。

7. 依賴關(guān)系

代碼

public class 招商引資 {     public void 招商(王大拿 大拿){     } }  public class 王大拿 {     private String 資源; }

類圖

如何掌握UML類圖

UML類圖,依賴關(guān)系

  • 功能:依賴關(guān)系

  • 概念:依賴(Dependency)關(guān)系當(dāng)表示一個(gè)事務(wù)需要使用另外一個(gè)事務(wù)時(shí),可以使用依賴關(guān)系。

  • 場(chǎng)景:招商引資需要王大拿,但并只是就只有這一個(gè)大拿。王大拿不來,可能還有李大拿、張大拿。

趙家班全景類圖

綜上,這6種關(guān)系里,組合、聚合、關(guān)聯(lián)代碼結(jié)構(gòu)類似,可以從依賴的強(qiáng)弱進(jìn)行理解。強(qiáng)弱關(guān)系依次是:繼承 > 實(shí)現(xiàn) > 組合  > 聚合 > 關(guān)聯(lián) > 依賴。

為了更清楚的表達(dá)出 UML 類關(guān)系,我們把這些畫到一整張圖中,如下;

如何掌握UML類圖


UML類圖,趙家班全景類圖

總結(jié)

  • 有人說,如果我們和外星人?非常友善的通信了。那么兩個(gè)星球之間會(huì)進(jìn)行一些交流,比如問,你好,地球人?人你多高呀?地球說1.75米。外星人暈了,米是什么單位?這樣就只能選取兩個(gè)星球通用的標(biāo)準(zhǔn)來定義,比如:1米是光在真空中1/299792458秒內(nèi)經(jīng)過的距離。

  • 其實(shí)程序開發(fā)也是這樣的,為了可以讓大家減少對(duì)新知識(shí)內(nèi)容的理解的溝通成本,需要定義一些溝通標(biāo)準(zhǔn),比如UML類圖。所以我們需要學(xué)習(xí)這些標(biāo)準(zhǔn)的工具化語言,來減少溝通成本,提升工作效率。

  • UML類圖也是最常用的圖稿,同時(shí)也非常易于掌握。為了可以把自己的知識(shí)面鋪設(shè)的更加完善,技術(shù)棧掌握的更加夯實(shí),也為了突破每一個(gè)階段的瓶頸。那就需要不斷學(xué)習(xí),不斷的積累,找機(jī)會(huì)破局。

到此,關(guān)于“如何掌握UML類圖”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

uml
AI