【軟體工程】3.UML類圖
阿新 • • 發佈:2019-01-09
UML和建模軟體Rose的使用已在上一篇介紹過了,這一篇我們繼續介紹畫圖方法。
我們介紹“類圖”:
關聯(全域性變數, 組合/聚合): 值、引用;
依賴:區域性變數(非Spring中 依賴注入)。
1.類圖舉例
我們在Rose中建立類圖的方法:
建立一個實體:
然後我們再新增一個name的屬性。
之後我們按照上面類似的方法,給實體類新增一個方法:
然後我們給它設定一個引數(String name),無返回(void)
然後用同樣的方法我們新增getName()方法:
如果不顯示方法的引數,可以勾選“顯示原型”:
之後我們新增一個介面:
介面圖形如果是圓的,不想用圓的:
想改成方的,就在這裡更改:
好了,我們的類圖的例子和設定方法給大家了,我們將使用這種畫圖方法來畫一個完整的類圖。
我們畫一個使用者管理模組的類圖:
其中圖中的"關聯"和"依賴"的不同:
關聯:全域性性
依賴:區域性性
然後我們解釋一下圖中的各種關係:
(1)繼承關係
(2)實現關係
(3)關聯關係
關聯關係實際上就是類與類之間的聯絡;
關聯具有導航性:即雙向關係或單向關係。
(4)關聯之聚合關係(By ref)
聚合關係,表示的是整體和部分的關係,整體與部分可以分開。
使用帶空心菱形的實線來表示:
(5)組合關係(By value)
也是整體與部分的關係,但是整體與部分不可以分開;部分離開整體沒有實際意義。
使用帶實心菱形的實線來表示:
(6)依賴關係
A類使用到了另一個B型別。
關係具有:臨時性的、偶然性,但是B類的變
我們介紹“類圖”:
用於描述系統中的類與類之間的各種關係。
繼承:父子類關係;
實現:類與介面關係;關聯(全域性變數, 組合/聚合): 值、引用;
依賴:區域性變數(非Spring中 依賴注入)。
1.類圖舉例
我們在Rose中建立類圖的方法:
建立一個實體:
然後滑鼠放在實體上面,單擊滑鼠右鍵,可以新增這個實體類的屬性和方法:
新增一個屬性,然後雙擊屬性,點檢attribute可以設定屬性的詳細:然後我們再新增一個name的屬性。
之後我們按照上面類似的方法,給實體類新增一個方法:
然後我們給它設定一個引數(String name),無返回(void)
然後用同樣的方法我們新增getName()方法:
如果不顯示方法的引數,可以勾選“顯示原型”:
之後我們新增一個介面:
介面圖形如果是圓的,不想用圓的:
想改成方的,就在這裡更改:
好了,我們的類圖的例子和設定方法給大家了,我們將使用這種畫圖方法來畫一個完整的類圖。
我們畫一個使用者管理模組的類圖:
其中圖中的"關聯"和"依賴"的不同:
關聯:全域性性
依賴:區域性性
然後我們解釋一下圖中的各種關係:
(1)繼承關係
public abstract class BaseDaoImpl{ public void save(Object entity){ } public Object findObject(Object id){ } } public class UserDaoImpl extends BaseDaoImpl{ }
(2)實現關係
public interface UserDao {
}
public class UserDaoImpl
implements UserDao {
}
(3)關聯關係
關聯關係實際上就是類與類之間的聯絡;
關聯具有導航性:即雙向關係或單向關係。
(4)關聯之聚合關係(By ref)
聚合關係,表示的是整體和部分的關係,整體與部分可以分開。
使用帶空心菱形的實線來表示:
(5)組合關係(By value)
也是整體與部分的關係,但是整體與部分不可以分開;部分離開整體沒有實際意義。
使用帶實心菱形的實線來表示:
(6)依賴關係
A類使用到了另一個B型別。
關係具有:臨時性的、偶然性,但是B類的變
會影響到A。程式碼層面,為類B作為引數被類A在某個method方法中使用。