UML用例圖
用例圖有以下東東:
用例
參與者
關聯
系統邊界
用例使用橢圓來表示,橢圓里邊寫上用例的名稱:
這里的用例可以理解為一個動作或行為,或者一個對象。
參與者用一個小人兒,在小人兒下面寫上參與者名稱,例如學生:

關聯用一條線表示:
把很多個用例放到一個大的矩形框里。

時序圖
時序圖里面包括以下內容:
1.對象
2.生命線
3.活動條
4.消息
5.控制流(包括順序,分支,循環)
對象在矩形里邊,左邊是對象名稱,右邊是對象類型,下方還有一條線.

用虛線代表的是對象的生命線:

活動條是一個豎著的矩形,當接收到消息的時候,這個對象就會有活動條:

消息用一根箭頭,箭頭上面寫上消息信息,例如一個登錄方法
login(userName,passWord):

控制流有3種,普通就是按照順序的一個流程,還有分支就相當于if else:

矩形里面有一條虛線,左上角用ALT表示,當C為true的時候,就執行虛線上方的內容,當C為false的時候就執行虛線下方的內容。
循環控制流:

左上角有LOOP表示循環,當C為true的時候,就循環執行方框里邊的內容

可以看到,每個對象都有它們的生命線(虛線);
1. 一開始用戶給類型為GUI(界面)的Login對象發送一個登錄信息 「 login(userName,passWord)」 ;
2. Login這個對象接收到了就會產生活動條,這時候Login這個界面會給類型為Controller的loginController發送登錄信息「 login(userName,passWord)」 ;
3. 此時loginController接收到信息產生活動條,這時候loginController去找類型為DB的UserDao,給它發送了一個獲取用戶密碼的信息「getUserPassword(userName)」;
4. UserDao接收到信息后產生活動條,返回用戶的密碼;
5. 此時loginController接收到信息(用戶的密碼 userPassword),loginController此刻將信息發送給自己,通過verify去校驗密碼并且用result接收結果;
6. 校驗就產生了分支控制流,當resul為true的時候loginController會發送success給Login,當result為false的時候,loginController會發送failure給Login;
7. 最后Login最后給用戶發送messag信息。
類圖
類圖有以下幾個東西:
1.類名
2.屬性
3.方法
4.可見性
5.數據類型
6.關聯關系
7.依賴關系
8.繼承/實現關系
9.組合/聚合關系
類名,屬性,方法在一個矩形中,分為上中下:
類名,屬性,方法在一個矩形中,分為上中下:

可見性:
private的時候在前方用-表示
public的時候在前方用+表示
protected的時候在前方用#表示
數據類型:
數據類型表現形式: 名字:類型
例如:

userName和passWord這兩個屬性是protected修飾的,數據類型都是String;login()和register()這兩個方法是public修飾的,數據類型都是boolean;
關聯關系,用實現表示,例如A關聯B:

依賴關系,用虛線表示,例如A依賴B:

繼承關系,用一個△+一條實線表示,,例如A繼承B:

依賴關系,用一個△+一條虛線表示,例如A實現B:

組合關系:用一個?+一條虛線表示,例如A組合B:

聚合關系,用一個◇ + 一條虛線表示,例如A組合B:

聚合:表示兩個對象之間和整體和部分的弱關系,部分的生命周期可以超越整體。如電腦和鼠標。
組合:表示兩個對象之間是整體和部分的強關系,部分的生命周期不能超越整體,或者說不能脫離整體而存在,組合關系的部分,是不能在整體之間進行共享的。
類圖舉例子:

可以看到,有User類,Customer類,Role類,Payment類,aliPay類,wechatPay類 。
其中Customer繼承User,User類的userName和passWord這兩個屬性是protected修飾的,數據類型是String;login()和register()這兩個方法是public修飾的,數據類型都是boolean;
