Unified Model Language(UML),統(tǒng)一建模語言。類圖用于描述系統(tǒng)中所包含的類以及它們之間的相互關(guān)系,幫助人們簡化對系統(tǒng)的理解,它是系統(tǒng)分析和設(shè)計階段的重要產(chǎn)物,也是系統(tǒng)編碼和測試的重要模型依據(jù)。
類表示
類圖分3層:
- 第一層表示類的名稱,如果是抽象類,則用斜線表示;
- 第二層是類的特性,通常表示字段或?qū)傩裕?/li>
- 第三層是類的操作,通常是方法或行為。
注:第二層與第三層前面存在符號,“+”代表public,“-”代表private,“#”代表protected。
類關(guān)系表示
- 關(guān)聯(lián)(Association):一種擁有的關(guān)系,它使一個類知道另一個類的屬性和方法。UML中,關(guān)聯(lián)關(guān)系采用帶<font color="#ff0000">普通箭頭的實心線表示</font>,指向被擁有者。雙向的關(guān)聯(lián)可以有兩個箭頭或者沒有箭頭,單向關(guān)聯(lián)有一個箭頭。
- 聚合(Aggregation):整體與部分的關(guān)系。成員對象是整體對象的一部分,但是成員對象可以脫離整體對象獨立存在。UML中,聚合關(guān)系采用帶<font color="#ff0000">空心菱形的實心線表示</font>,菱形指向整體,箭頭指向部分。如:輪胎是汽車的組成部分,但是輪胎可以獨立存在,因此,汽車和輪胎是聚合關(guān)系。
- 組合(Composition):整體與部分的關(guān)系,但部分不能離開整體而單獨存在。UML中,組合關(guān)系用帶<font color="#ff0000">實心菱形的實心線表示</font>,菱形指向整體,箭頭指向部分。如:頭與嘴巴就是組合關(guān)系。
- 依賴(Dependency):使用關(guān)系。與管線關(guān)系不同的是,它是一種臨時性的關(guān)系,通常在運行期間產(chǎn)生,并且隨著運行時的變化,依賴關(guān)系也可能發(fā)生變化。依賴也有方向,雙向依賴是一種非常糟糕的結(jié)構(gòu),應(yīng)該杜絕產(chǎn)生。UML中,依賴關(guān)系用<font color="#ff0000">帶箭頭的虛線表示</font>,箭頭指向被使用者,由依賴的一方指向被依賴的一方。
-
泛化(Generalization):也就是
繼承關(guān)系。UML中,泛化關(guān)系用帶<font color="#ff0000">空心三角形的直線</font>來表示,三角形指向父類。 - 實現(xiàn)(Realization):類與接口的關(guān)系。UML中,實現(xiàn)關(guān)系用帶<font color="#ff0000">空心三角形的虛線</font>來表示,三角形指向接口。
說明
各種關(guān)系的強弱順序:泛化 = 實現(xiàn) > 組合 > 聚合 > 關(guān)聯(lián) > 依賴