1. 程式人生 > 實用技巧 >UML 類圖基礎知識

UML 類圖基礎知識

目錄

原文連結:UML 類圖基礎知識

類圖格式

基礎要素

  • 類名
  • 屬性(java叫欄位)
  • 操作(java叫方法)

基本圖示

示例

介面(機動車為例)

抽象類(汽車為例)

說明:

抽象類:類名斜體
抽象方法:方法名為斜體
普通類(賓士為例子)

可見性說明

符號 說明
- private
+ public
# protected
~ 包許可權

其他說明

類方法和類說明,加下劃線

類與類之間的關係

泛化關係(generalization)

(is-a):指的是一個類(稱為子類、子介面)繼承另外的一個類(稱為父類、父介面)的功能。

關係圖

示例(Benz和Bmw繼承Car)

實現關係(realize)

指的是一個class類實現interface介面(可以是多個)的功能。

關係圖

示例(Car 實現 MotorVehicle 介面)

關聯關係(Association)

描述不同類的物件之間的結構關係(靜態關係、執行狀態無關、強關聯)。

關係圖

  • 不強調方向(預設):類A與類B都知道相互關聯關係

  • 強調方向:類A知道與類B關聯,但是類B不知道

示例1(Benz 車和 Benz 品牌的關係,Benz車可以獲取Benz品牌,Benz品牌可以釋出Benz車)

示例2(Benz經銷商賣Benz,單Benz無需知道與Benz經銷商的關係)

依賴關係(Dependency)

描述一個物件在執行期間會用到另一個物件的關係(動態、臨時關係)。

關係圖

示例(汽車維修員維修汽車)

聚合關係(Aggregation)

(has-a):聚合關係用於表示實體物件之間的關係,表示整體由部分構成,但不是強依賴關係,部分可以脫離整體存在。

關係圖

示例(部門由員工組成,但部門解散,員工還存在)

組合關係(Composition)

(contains-a):組合關係是一種強依賴的特殊聚合關係,同樣可表示整體由部分構成,但部分不能脫離整體存在。

關係圖

示例(公司由部門組成,公司不存在,部門也不存在)

公眾號

喜歡我的文章,請關注公眾號