UML之靜態圖---類圖(class diagram )
在學習類圖之前我們要先了解一下類,物件的概念。
①、什麼是類?什麼是物件?他們的關係是什麼?
類:類是具有相同屬性和服務的一組物件的集合。為屬於該類的所有物件提供了統一的抽象描述,其內部包括屬性和服務(方法)兩個主要部分。
物件:物件是系統中用來描述客觀事物的一個實體,是構成系統的一個基本單位。一個物件由一組屬性和這組屬性進行操作的一組服務組成。從更抽象的角度來講,物件是問題域或實現域中某些事物的一個抽象,她反應該事物在系統中需要儲存的資訊和發揮的作用;它是一組屬性和有權對這些屬性進行操作的一組服務的封裝體。客觀世界是由物件和物件之間的聯絡組成的。
類與物件的關係就如磨具與鑄件的關係,類的例項化結果就是物件,而對一類物件的抽象就是類。類描述了一組有相同特徵(屬性)和形同行為(方法)的物件。
②、什麼是類圖?
類圖一反應類的結構(屬性、操作)以及類之間的關係為主要目的,描述了軟體系統的結構,是一中靜態建模方法。
類圖中的“類”與面嚮物件語言中的“類”的概念是對應的,是對現實世界中事物的抽象。
③、用例圖後面為什麼是畫類圖,而不是其他圖,類圖產生於什麼階段,由誰來繪製,類圖它的作用是什麼?
因為按照軟體工程的生命週期來執行的話,需求分析階段後便是設計階段了,而類圖產生於設計階段,由系統設計師繪製,其作用是描述系統的架構結構、指導程式設計師編碼。它包括系統中所有有必要指明的實體類、控制類、介面類及與具體平臺有關的所有技術性資訊。
④、類圖可分為哪兩類?
您所畫的類圖屬於領域UML類圖還是實現UML類圖呢
⑤、站在巨人的肩膀上了解類圖(很棒的一篇文章)
https://blog.csdn.net/monkey_d_meng/article/details/6005764
⑥、UML類圖如何繪製?
6.1、類的表示
6.1.1、類的組成
從上到下分為三部分,分別是類名、屬性和操作。
6.1.2、介面
一組操作的集合,只有操作的宣告而沒有實現。介面圖與類圖的主要區別在於頂端的<<interface>>顯示。第一行是介面名稱,第二行是介面方法。介面還有另一種表示方法,俗稱棒棒糖表示方法。唐老鴨是能講人話的唐老鴨,實現了講人話的介面。如圖:
6.1.3、抽象類
不能被例項化的類,一般至少包含一個抽象操作,與類圖的主要區別在於抽象類的名稱、方法為斜體。
6.1.4、模板類
一種引數化的類,在編譯時把模板引數繫結到不同的資料型別,從而產生不同的類。
6.2、類的關係
6.2.1關聯關係:
描述了類的結構之間的關係,具有方向、名字、角色和多重性等資訊。
一般的關聯關係語義較弱,也有兩種語義較強,分別是聚合和組合
聚合關係:
特殊關聯關係,指明一個聚合(整體)和組成部分之間的關係
組合關係:
語義更強的聚合,部分和整體具有相同的生命週期
6.2.2、泛化關係:
在面向物件中一般稱為繼承關係,存在於父類與子類、父介面與子介面
6.2.3、實現關係:
對應於類和介面之間的關係
6.2.4、依賴關係:
UML類圖依賴關係是一種使用關係,特定事物的改變有可能會影響到使用該事物的事物,反之不成立。在你想顯示一個事物使用另一個事物時使用,兩個元素之間的一種關係,其中一個元素(服務者)的變化將影響另一個元素(客戶),或向它(客戶)提供所需資訊。
依賴關係與其他關係的區別連結:http://developer.51cto.com/art/201006/208280.htm
⑦、類圖思維導圖
⑧、以機房收費系統為例項繪製類圖
8.1、首先尋找類,可通過尋找名詞,動詞來確定
需求過程中的名片語
一般使用者 |
操作員 |
管理員 |
學生餘額 |
學生資訊 |
基本資料表 |
上機記錄 |
充值金額 |
日賬單 |
充值記錄 |
退卡金額 |
周賬單 |
上機狀態 |
操作員工作記錄 |
正在值班記錄 |
需求過程中的動片語
輸入資料 |
修改資料 |
統計 |
退卡 |
結賬 |
顯示 |
新增 |
刪除 |
查詢 |
註冊 |
充值 |
列印
|
8.2、繪製類圖
以上是依照個人理解繪製的機房收費系統類圖(如有不足,請您給予指正)
下一站走起^_^