1. 程式人生 > >UML類圖的箭頭含義

UML類圖的箭頭含義

這裡寫圖片描述

1、關聯:類之間的一種關係,如學生和老師。
程式碼中的表示:
class Student{
private Teacher mTeacher;
}
class Teacher{
}

2、雙向關聯:和關聯一樣,不過它是兩個方向的,如學生和老師,老師和學生,雙向關係。
程式碼中表示:
class Student{
private Teacher mTeacher;
}
clsass Teacher{
private Student mStuent;
}

3、聚合:整體和部分的關係,has-a的關係,如汽車擁有引擎。通常是通過建構函式或者setter賦值進去的。
程式碼中表示:
class Car{
private Engine mEngine;
public void setEngine(Engine e){
mEngine = e;
}
}

4、組合:整體和部分的關係,is-a的關係,如手是人體的一分部。通常是在建構函式的時候,通過new創建出來。
程式碼中的表示:
class People{
private Hand mHand;
public People(){
mHand = new Hand();
}
}

5、依賴:是使用的關係,例如汽車使用喇叭來鳴笛,呼叫汽車鳴笛的方法時,就依賴於喇叭鳴笛方法。
程式碼中表示:
class Car{
private Horn mHorn;
public void whistle(){
mHorn.whistle();
}

6、繼承:不解釋。
7、實現介面:不解釋。

小結:
1、繼承已實現的類圖,箭頭是三角形的,其他的是不閉合的箭頭。
2、關聯與聚合在程式碼中的表示,都類似。主要是構建模型的時候,理解上的差別。