<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

UML簡介與類圖詳解

碼農愛學習 ? 來源:碼農愛學習 ? 作者:碼農愛學習 ? 2023-05-05 09:07 ? 次閱讀

1 UML簡介

1.1 UML是什么

UML,全稱為Unified Model Language,即統一建模語言,是由一整套圖表組成的,為面向對象系統的產品進行說明、可視化和編制文檔的一種標準語言。UML 代表了一組最佳工程實踐,這些實踐已被證明在大型復雜系統的建模中是成功的。UML是開發面向對象軟件和軟件開發過程中非常重要的一部分。在嵌入式系統設計中,使用UML建模并書寫文檔,通??梢云鸬绞掳牍Ρ兜男Ч?。

1.2 UML起源與發展

UML的出現,起源于三位面向對象大師對各自方法的結合與統一:

  • 由Booch創作的Booch方法
  • 由Jacobson創作的OOSE、Martin/Odell方法
  • 由Rumbaugh創造的OMT、Shlaer/Mellor方法

這些方法雖然各不相同,但共同的理念非常相似,三者結合,于1995年10月推出第一個名為“統一方法”的版本:Unified Method 0.8。

之后,又以名為“統一建模語言”的UML1.0版本提交到OMG組織(Object Management Group 對象管理組織),到1997年底OMG組織

正式采納UML1.1作為基于面向對象技術的標準建模語言,UML1.1和UML 2.0(2005年發布)是UML歷史上兩個具有里程碑意義的版本。

1.3 UML中的各種圖

UML具有許多不同類型的圖表,包括:

  • 靜態圖:用例圖、類圖、包圖
  • 動態圖:活動圖、狀態圖、時序圖、協作圖

這些不同的圖,可以提供從不同的角度來描述系統,因為大型的軟件開發流程中除了程序員外,還有產品、設計、測試等人員,這些人都對系統的不同方面有不同關注,因此在建模時需要考慮不同的細節層次。

本篇文章,先來介紹UML類圖的基礎知識。

2 UML類圖實例

2.1 visio設計UML類圖

新建一個visio文件,打開后會自動提示選擇創建某種類型的圖,這里選擇"軟件和數據庫 ->UML類圖"

點擊確定之后,會進入UML類圖的編輯界面,左側可以看到用于UML類圖編輯的基本元素:

將這些元素拖拽到右側的編解面板中,可以看到這些元素的基本結構形式:

2.2 一個UML類圖實例

下面是一個UML類圖的實例:

  • 動物是一個抽象類,該類的一個子類是鳥類,鳥類又可以分出大雁、鴨、企鵝這些類,鴨類的一個子類是唐老鴨,這些屬于繼承關系
  • 動物類依賴氧氣和水,屬于依賴關系
  • 翅膀是鳥的一部分,且翅膀不可獨立存在,屬于合成(或組合)關系
  • 多只大雁聚集在一起形成雁群,屬于聚合關系
  • 大雁可以飛翔,屬于接口(或實現)關系
  • 企鵝'了解'氣候規律,屬于關聯關系

3 UML類圖元素介紹

下面具體介紹下UML類圖中的各個元素。

3.1 圖

UML類圖中的圖主要包括****類圖接口圖 。

3.1.1 類圖

**類圖是UML類圖中的主要元素,類圖的結構包括3行: **

  • 第1行:是類的名稱
  • 第1行:是類的屬性,即類的各種成員變量
  • 第1行:是類的方法,即類的各種成員函數

主:若類的名稱是斜體,表示這是個抽象類,比如這里的動物

對于屬性和方法前面的符號:

  • +號:共有類型,public
  • -號:私有類型,private
  • #號:保護類型,protect

3.1.2 接口圖

與類圖比較相似的是接口圖,與類圖最大的區別是頂端標注有“<<接口>>”表示這是個接口圖,接口圖的接口只有兩行:

  • 第1行:是接口的名稱
  • 第1行:是接口的方法,即函數實現

注:接口圖還要另外一種“棒棒糖”表示法,圓圈的旁邊為接口名稱,接口方法的實現在類中實現

3.2 關系

圖之間的連接,通過各種關系線來連接,包括: 接口關系、依賴關系、繼承關系、合成關系、聚合關系、關聯關系 。

3.2.1 接口關系(實現關系)

接口關系,也稱實現關系,用帶****三角箭頭+虛線 ,箭頭指向接口的形式,表示類是接口所有特征和行為的實現

3.2.2 依賴關系

依賴關系,描述的是一種使用關系,即一個類的實現需要另一個類的協助,用帶****普通箭頭+虛線 ,普通箭頭指向被使用者的形式表示

3.2.3 繼承關系(泛化關系)

繼承關系,也稱泛化關系,用帶****三角箭頭+實線 ,箭頭指向父類的形式,表示子類繼承父類的所有特征和行為

3.2.4 合成關系(組合關系)

合成關系,也稱組合關系,描述的是一種整體與部分的關系,且部分不能離開整體而單獨存在,用帶****實心菱形+實線 ,實心菱形指向整體的形式表示

3.2.5 聚合關系

聚合關系,描述的是整體與部分的關系,用帶****空心菱形+實線 ,空心菱形指向整體的形式表示

3.2.6 關聯關系

關聯關系,描述的是不同類的對象之間的結構關系,用帶****普通箭頭+實線 ,箭頭指向被關聯者的形式表示。

雙向的關聯可以有兩個箭頭,或者沒有箭頭。單向的關聯有一個箭頭。

4 總結

本篇介紹了UML類圖的基礎知識,包括2種和6種關系,并通過visio軟件,演示如何畫出一個UML類圖


審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式系統
    +關注

    關注

    40

    文章

    3439

    瀏覽量

    128337
  • UML
    UML
    +關注

    關注

    0

    文章

    122

    瀏覽量

    30762
  • 圖表
    +關注

    關注

    0

    文章

    24

    瀏覽量

    8822
收藏 人收藏

    評論

    相關推薦

    UML詳解

    UML
    電子學習
    發布于 :2023年01月14日 10:12:47

    UML狀態和Petri網絡在測試用例生成的應用

    【作者】:陳志德;曾凡平;【來源】:《小型微型計算機系統》2010年03期【摘要】:分析和研究UML狀態、擴展狀態機和Petri網在測試用例生成的特點,提出結合三者優勢的測試用例
    發表于 04-24 09:52

    STM32設計USB資料詳解

    `協議簡介協議特性系統和架構設備和供電傳輸類型USB OTG協議STM32互聯型產品 OTG_FS 控制器控制器特性控制器不同模式的連接STM32設計USB資料詳解[hide][/
    發表于 11-30 14:21

    請問UML用例的創建方法是什么?

    UML用例的創建方法及其用例的描述
    發表于 11-06 07:10

    請問如何使用UML來設計嵌入式系統?

    UML引入到嵌入式系統中的可行性一種改進的通用嵌入式系統UML方案如何使用UML來設計嵌入式系統?
    發表于 04-23 06:12

    GOOP怎么操作能順利將UML生成代碼

    我是用GOOP內的UML編輯器編輯了一個UML,然后希望生成對應代碼,然后呢,GOOP讓我選擇一個項目,我選擇后工具就崩潰了,有沒有大神對這方面了解的,或者有沒有相關的使用說明,中英文都可以。非常感謝~
    發表于 10-26 09:23

    編寫電視TV,UML和說明

    編寫電視TV,UML和說明如下:注意:(1)電視只有在打開的狀態下才可以調音量和設置新頻道;(2)設置音量和頻道時,應該在規定的范圍,如音量值為1-7。解題要求:編寫測試
    發表于 10-29 06:09

    UML教程設計核心技術

    UML教程設計核心技術:UML的產生和成長,什么是UML,UML與面向對象的軟件分析與設計,UML的應用領域。Component-Based
    發表于 02-08 17:42 ?0次下載

    什么是UML

    什么是UML UML是一種標準的圖形化建模語言,它是面向對象分析與設計的一種標準表示。它:不是一種可視化的程序設計語言而是一種
    發表于 02-08 17:47 ?3295次閱讀
    什么是<b class='flag-5'>UML</b>

    詳解Oracle中XMI開發UML圖表技術

    如果沒有自動以XMI格式存儲UML圖表的工具,那么可以使用XSLT生成XMI文檔。由示例部署描述符創建的XMI文檔顯示一個UML類圖表;該圖表將表現部署描述符EJB的分析視圖。
    發表于 10-19 16:38 ?2937次閱讀
    <b class='flag-5'>詳解</b>Oracle中XMI開發<b class='flag-5'>UML</b>圖表技術

    什么是UML圖?常見的UML圖工具有哪些?

    UML圖是統一建模語言,又稱標準建模語言。是對軟件設計開發過程可視化建模的一種語言。多應用在一些軟件系統工程上,有時在應用在機械系統和業務流程上有所應用。這種模型通常以圖表方式呈現。 UML狀態圖
    的頭像 發表于 06-22 14:10 ?4089次閱讀
    什么是<b class='flag-5'>UML</b>圖?常見的<b class='flag-5'>UML</b>圖工具有哪些?

    UML統一建模語言

    UML-Unified Modeling Language 統一建模語言,又稱標準建模語言。是用來對軟件密集系統進行可視化建模的一種語言。UML的定義包括UML語義和UML表示法兩個元
    的頭像 發表于 05-05 10:15 ?624次閱讀
    <b class='flag-5'>UML</b>統一建模語言

    五個免費UML建模工具介紹

    UML工具很多是商用的,價格不菲;而免費的UML建模工具,功能完善的很少。以下推薦的是五個免費的UML建模工具,相對而言還算功能比較不錯。
    的頭像 發表于 05-05 11:10 ?5626次閱讀
    五個免費<b class='flag-5'>UML</b>建模工具介紹

    UML狀態圖詳解

    本篇介紹了UML狀態圖的基礎知識,并通過visio繪制一個全自動洗衣機的UML狀態圖實例,來介紹UML狀態圖的畫法與所表達的含義。
    的頭像 發表于 05-09 09:00 ?2105次閱讀
    <b class='flag-5'>UML</b>狀態圖<b class='flag-5'>詳解</b>

    UML時序圖詳解

    本篇介紹了UML時序圖的基礎知識,并通過visio繪制一個物聯網設備WIFI配網的UML時序圖實例,來介紹UML時序圖的畫法與所表達的含義。
    的頭像 發表于 05-16 09:09 ?1457次閱讀
    <b class='flag-5'>UML</b>時序圖<b class='flag-5'>詳解</b>
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>