1,類圖的概念
a,顯示類、接口及其靜態結構和關系。
b、用於描述系統的結構設計。
2.類圖的元素
類、接口、協作和關系,我們只簡單介紹這四個要素。
像其他圖壹樣,類圖也可以包含註釋和限制。
類圖還可以包含包和子系統,它們用於對元素進行分組。
有時妳也可以把壹個類的實例放到類圖中。
3.班級
A.類是壹組具有相同屬性、操作、關系和語義的對象的抽象。它是面向對象系統組織結構的核心,包括名稱部分、屬性部分和操作部分,如下圖所示。
B.類屬性的語法是:
[可見性]屬性名稱[:類型] [=初始值][{屬性字符串}]
可見性:Public)"+,Private)"-,Protected)"#。
類操作的語法是:
[可見性]操作名稱[(參數表)] [:返回類型][{屬性字符串}]
可見性:Public)"+,Private)"-,Protected)"#,Package)"~ public ~。
參數列表:
定義方式:“名稱:類型”;如果有多個參數,用逗號分隔;參數可以有默認值;
屬性字符串:
將除預定義元素之外的壹些信息添加到操作的定義中。
4.連接
對對象行為的描述,但不給出它的實現和狀態。
壹個類可以實現壹個或多個接口。
它由壹個兩層的矩形框表示,與類圖的主要區別在於有壹個
也可以用空心圓來表示:?
5.合作
協作是指壹些類、接口和其他元素壹起工作以提供某種協作的行為,這種協作不是簡單地通過添加元素來獲得的。例如,當您在分布式系統中對事務流程進行建模時,您無法理解事務是如何僅通過壹個類進行的。事實上,這個過程的執行涉及到壹系列類的合作。使用類圖來可視化這些類及其關系。
6.關系
這篇文章的重點見第二部分。
二,階級之間的幾種關系
1,壹般化
a,是繼承關系,代表壹般與特殊的關系。它規定了子類如何專門化父類的所有特征和行為,並描述了壹種“是壹種”的關系。比如老虎是壹種動物,既有老虎的特點,又有動物的特點。
b,用帶空心箭頭的實線表示,箭頭指向父類,如下圖所示:
2.實現
a,是類和接口的關系,說明類是接口所有特性和行為的實現。
b,用虛線表示,空心箭頭指向接口,如下圖所示:
3.聯合
壹、壹般協會
A.關聯性是類之間的聯系,使壹個類知道另壹個類的屬性和方法,指出事物的對象之間的聯系,比如老師和學生,夫妻。相關性可以是雙向的、單向的和自相關的。
b,用帶普通箭頭的實線表示。雙向關聯可以有兩個箭頭,也可以沒有箭頭,單向關聯有壹個箭頭,如下圖所示:
b、聚合(Aggregation)
a、是整體與部分的關系(整體有部分),部分可以脫離整體單獨存在。舉個例子,如果汽車和輪胎是整體和部分的關系,輪胎離開了汽車依然可以存在。聚合是壹種關聯,而且是強關聯。從句法上看,關聯和聚合是無法區分的,必須考察具體的邏輯關系。
b,用帶空心菱形的實線表示,菱形指向整體,如下圖所示:
C.作文
a、是整體與部分的關系,但部分不能脫離整體而單獨存在。如果公司和部門是整體和部分的關系,沒有公司就沒有部門。組合關系是壹種聯想關系,比聚合關系更強。它要求在普通聚合關系中代表整體的對象負責代表部分的對象的生命周期。
b,用帶實心菱形的實線表示,指向整體,如下圖所示:
4、依賴(Dependency)
A,元素A的變化會影響元素B,那麽B和A的關系是依賴的,B依賴於A..要避免雙向依賴,壹般來說,不應該有雙向依賴。聯想、實現、概括都是依賴。
b,用帶箭頭的虛線表示,箭頭指向依賴元素。
5.摘要
各種關系的強度順序如下:
泛化=實現>組合>聚合>關聯>依賴
下面的UML圖生動地展示了各種類圖之間的關系: