UML 類圖介紹

原文地址:UML 類圖介紹 博客地址:http://www.extlight.comhtml

1、基本概念

類圖是描述類、接口以及類之間關係的圖。java

1.1 做用

類圖經常使用來描述業務或軟件系統的組成、結構和關係程序員

1.2 類描述

類在 UML 中一般以實線矩形框表示。 矩形框中有若干分隔框,分別包含類名、屬性、行爲等元素。以下圖: web

類名:圖中藍色背景的字,若是字體爲斜體,表名該類爲抽象類 屬性:類名下邊的區域 行爲:屬性下邊的區域 可見性:屬性和行爲前邊的 "+"、"-" 和 "#"(圖中未標註) 分別表示 public、private 和 protectedide

1.3 接口描述

接口的類圖表述與類大體相同,不一樣的是接口名要添加 Interface 標識,且行爲的可見性必須用 "+" 表示。以下圖: 字體

2、類圖中的六種關係

  • 繼承
  • 實現
  • 關聯
  • 依賴
  • 組合
  • 聚合

2.1 繼承(Inherit)

繼承是面嚮對象語言的三個特性之一。子類繼承父類,子類可使用父類全部非私有的屬性和方法,其UML類圖表示以下: ui

UML 類圖中繼承關係使用空心三角形+實線表示。spa

2.2 實現(Realization)

實現與繼承相似,實現類繼承接口中的方法,可是方法必須由實現類本身實現,其UML類圖表示以下: 3d

UML 類圖中實現關係使用空心三角形+虛線表示。code

2.3 關聯(Association)

指類與類之間的關係,它使得一個類知道另外一個類的屬性和方法。關聯能夠是雙向的,也能夠是單向的。

用 Java 代碼表示企鵝只存在在南極,與氣候有關係:

public class Penguin {
    private Climate climate;
}
複製代碼

其UML類圖表示以下:

UML 類圖中關聯關係使用實線箭頭表示。

2.4 依賴(Dependency)

指類與類之間的聯接,依賴關係表示一個類依賴於另外一個類的定義。通常而言,依賴關係在Java語言中體現爲局域變量、方法的形參,或者對靜態方法的調用。

用 Java 代碼表示程序員工做須要用到電腦:

public class Programmer{
    public void work(Computer computer) {
        
    }
}
複製代碼

其UML類圖表示以下:

UML 類圖中依賴關係使用虛線箭頭表示。

2.5 組合(Composition)

關聯關係的一種,表示一種強的「擁有」關係,體現了嚴格的部分和總體的關係,部分和總體的生命週期同樣。

用 Java 表示每隻鳥都有翅膀:

public class Bird {
    private Wing wing;
    public Bird() {
        wing = new Wing();
    }
}
複製代碼

其UML類圖表示以下:

UML 類圖中組合關係使用實心菱形實線表示。

2.6 聚合(Aggregation)

關聯關係的一種,表示一種弱的「擁有」關係,體現的是A對象能夠包含B對象,可是B對象不是A對象的一部分。

用 Java 代碼表示大雁是羣居動物,每隻大雁都屬於一個雁羣,一個雁羣能夠有多隻大雁:

public class WildGooseAggregate {
    private List<WildGoose> wideGooses;
}
複製代碼

其UML類圖表示以下:

UML 類圖中聚合關係使用空心菱形實線表示。

3、參考資料

相關文章
相關標籤/搜索