一、類圖:允許我們去標記靜態內容及類之間的關系。
類的基本表示法:
- 名稱
- 屬性(類型,可見性)
- 方法(參數,返回值)
tip:
- 顯示可見性:Options->Show Visibility
- 顯示屬性:Options->Show Attributes
- 顯示方法:Options->Show Operations
- 顯示方法參數:Options->Show Operation Signature
- 禁止屬性:Options->Suppress Attributes
- 禁止方法:Options->Suppress Operations
二、接口,接口的基本表示法
- 圓形表示法
- 構造型表示法
tip:
- Decoration(裝飾):Options->Stereotype Display->Decoration
- Icon:Options->Stereotype Display->Icon
- Lable:Options->Stereotype Display->Lable
三、包
- 可以用來表示層次結構(子系統)
- 可以用來組織各種內容
四、關系
- 依賴:一個事物的變化影響另一個事物的變化
高內聚低耦合,降低跟不穩定系統的依賴關系。(必要性是畫圖的重要原則,雖然有這種關系,但並不一定要畫出來,如果非要畫出來,則應該考慮不要影響圖形的美觀)
- 關聯:類的對象之間有關聯;(關聯名、導航、角色、多重性、聚合、組合)
1.關聯名:(投擲)
2.導航性:
public class Student{//直接導航 private int id; private String name; private Classes classes; } public class Student{//非直接導航 private int id; private String name; private int classesid; }
雙向導航
3.角色名:(類里的一個屬性)
public class Document{ public User creator; } + 表示public # 表示protected - 表示 private
4.多重性:(一個對象可以和多少個其他對象產生關系,多重性的確立,要從雙方來考慮)
一個學生只能屬於一個班級,一個班級可以包含多個學生
5.聚合:表示整體與部分的關系;
Customize..->Creates an aggregation
6.組合:整體的生命周期是一致的;(組合是一種聚合)
- 泛化:(is a kind of,是一種)
- 實現