成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

全面認識UML類圖元素

開發 架構
本文向大家介紹一下UML類圖元素,類圖是最常用的UML圖,它用于描述系統的結構化設計。其中包括類關系以及與每個類關聯的屬性及行為。

本節和大家一起學習一下UML類圖元素,類圖能出色地表示繼承與合成關系。為了將UML類圖作為一種高效的溝通工具使用,開發者必須理解如何將類圖上出現的元素轉換到Java中。請看本節詳細介紹。

全面認識UML類圖元素

開發Java應用程序時,開發者要想有效地利用統一建模語言(UML),必須全面理解UML元素以及這些元素如何映射到Java。本文重點討論UML類圖中的元素。類圖是最常用的UML圖,它用于描述系統的結構化設計。其中包括類關系以及與每個類關聯的屬性及行為。類圖能出色地表示繼承與合成關系。為了將類圖作為一種高效的溝通工具使用,開發者必須理解如何將類圖上出現的元素轉換到Java中。下面來進一步探索這一轉換過程。元素

類(Class)

UML類圖元素中類(圖A)是對象的藍圖,其中包含3個組成部分。第一個是Java中定義的類名。第二個是屬性(attributes)。第三個是該類提供的方法。

屬性和操作之前可附加一個可見性修飾符。加號(+)表示具有公共可見性。減號(-)表示私有可見性。#號表示受保護的可見性。省略這些修飾符表示具有package(包)級別的可見性。如果屬性或操作具有下劃線,表明它是靜態的。在操作中,可同時列出它接受的參數,以及返回類型,如圖A的“Java”區域所示。

圖A

包(Package)

包(圖B)是一種常規用途的組合機制。UML中的一個包直接對應于Java中的一個包。在Java中,一個包可能含有其他包、類或者同時含有這兩者。進行建模時,你通常擁有邏輯性的包,它主要用于對你的模型進行組織。你還會擁有物理性的包,它直接轉換成系統中的Java包。每個包的名稱對這個包進行了惟一性的標識。

圖B

接口(Interface)

UML類圖元素中接口(圖C)是一系列操作的集合,它指定了一個類所提供的服務。它直接對應于Java中的一個接口類型。接口既可用圖C的那個圖標來表示,也可由附加了<<interface>>的一個標準類來表示。通常,根據接口在類圖上的樣子,就能知道與其他類的關系。

圖C

 

關系

后面的例子將針對某個具體目的來獨立地展示各種關系。雖然語法無誤,但這些例子可進一步精煉,在它們的有效范圍內包括更多的語義。

 依賴(Dependency)


實體之間一個“使用”關系暗示一個實體的規范發生變化后,可能影響依賴于它的其他實例(圖D)。更具體地說,它可轉換為對不在實例作用域內的一個類或對象的任何類型的引用。其中包括一個局部變量,對通過方法調用而獲得的一個對象的引用(如下例所示),或者對一個類的靜態方法的引用(同時不存在那個類的一個實例)。也可利用“依賴”來表示包和包之間的關系。由于包中含有類,所以你可根據那些包中的各個類之間的關系,表示出包和包的關系。

圖D

 

關聯(Association)

實體之間的一個結構化關系表明對象是相互連接的。箭頭是可選的,它用于指定導航能力。如果沒有箭頭,暗示是一種雙向的導航能力。在Java中,關聯(圖E)轉換為一個實例作用域的變量,就像圖E的“Java”區域所展示的代碼那樣。可為一個關聯附加其他修飾符。多重性(Multiplicity)修飾符暗示著實例之間的關系。在示范代碼中,Employee可以有0個或更多的TimeCard對象。但是,每個TimeCard只從屬于單獨一個Employee。#p#

圖E

 

聚合(Aggregation)

UML類圖元素中聚合(圖F)關系是關聯的一種形式,代表兩個類之間的整體/局部關系。聚合暗示著整體在概念上處于比局部更高的一個級別,而關聯暗示兩個類在概念上位于相同的級別。聚合也轉換成Java中的一個實例作用域變量。

關聯和聚合的區別純粹是概念上的,而且嚴格反映在語義上。聚合還暗示著實例圖中不存在回路。換言之,只能是一種單向關系。

圖F 

合成(Composition)

合成(圖G)是聚合的一種特殊形式,暗示“局部”在“整體”內部的生存期職責。合成也是非共享的。所以,雖然局部不一定要隨整體的銷毀而被銷毀,但整體要么負責保持局部的存活狀態,要么負責將其銷毀。局部不可與其他整體共享。但是,整體可將所有權轉交給另一個對象,后者隨即將承擔生存期職責。

Employee和TimeCard的關系或許更適合表示成“合成”,而不是表示成“關聯”。

圖G

 

泛化(Generalization)

UML類圖元素中泛化(圖H)關系表示一個更泛化的元素和一個更具體的元素之間的關系。泛化是用于對繼承進行建模的UML元素。在Java中,用extends關鍵字來直接表示這種關系。

圖H 

實現(Realization)

實例(圖I)關系指定兩個實體之間的一個合同。換言之,一個實體定義一個合同,而另一個實體保證履行該合同。對Java應用程序進行建模時,實現關系可直接用implements關鍵字來表示。

圖I 

精確映射

如本文所述,UML類圖上的元素能精確映射到Java編程語言。開發團隊的成員可利用這種精確性來加強溝通,取得對系統結構化設計的共識。

 【編輯推薦】

  1. UML類圖元素全面剖析
  2. 解析UML圖標的含義
  3. UML中各種UML圖形的建立步驟簡明介紹
  4. 教你繪制整潔的UML圖
  5. UML用戶指南--UML圖簡介

 

責任編輯:佚名 來源: csdn.net
相關推薦

2010-06-09 10:17:19

UML類圖元素

2010-07-01 11:23:57

UML類圖元素

2010-06-28 18:29:09

UML類圖元素

2010-07-01 11:33:17

UML類圖關系

2010-07-09 15:19:58

UML類圖建模

2010-07-05 17:07:44

UML類圖符號

2010-06-28 16:37:05

UML類圖

2010-07-07 09:34:06

UML用戶指南

2010-06-30 13:53:28

UML建模過程

2010-07-02 12:39:38

UML對象圖

2010-07-01 17:43:23

UML包圖

2010-07-07 14:43:19

UML協作圖

2010-07-02 14:16:42

UML

2010-07-01 15:12:34

UML時序圖

2010-07-07 10:35:40

UML軟件建模

2010-07-12 13:47:09

UML部署圖

2010-07-01 16:02:48

UML組件圖

2010-07-01 12:53:34

UML用例圖

2010-07-05 09:19:35

UML動態模型圖

2010-07-12 15:25:05

UML建模工具
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 男人天堂视频在线观看 | 天天看天天爽 | 成人 在线 | 一级黄色毛片a | 国产三区av | 国产精品视频一二三区 | 欧美午夜影院 | 密色视频 | 黄色一级电影在线观看 | 国产日韩久久久久69影院 | 国产成人久久精品一区二区三区 | 欧美在线日韩 | 搞av.com| 99在线视频观看 | 欧美精品一区二区三区在线播放 | 在线观看成年视频 | 91在线精品一区二区 | 天天舔天天 | 日本高清不卡视频 | 最新中文字幕在线 | 国产一级视频免费播放 | 国产日韩精品在线 | 久久这里有精品 | 成年人精品视频 | 久久国产成人精品国产成人亚洲 | 中文在线一区二区 | 91看片在线观看 | 亚洲精品视频一区二区三区 | 精品综合久久久 | 综合精品| 精品国产第一区二区三区 | 成人小视频在线观看 | 国产精品不卡一区二区三区 | 亚洲精品日韩在线 | 国产成人精品一区二区三区在线 | 成人免费黄视频 | a级黄色片在线观看 | 国产精品久久久久一区二区三区 | 久久久久一区 | 日韩电影中文字幕 | 日韩国产中文字幕 |