轉自:http://www.cnblogs.com/rayrain/articles/1530606.html
只要存在對象間的交互,無論是控制的還是數據的,兩者之間就存在依賴。
我們現在說的依賴,它是比關聯更弱的關係。
依賴是對象間短暫的一種關係,在這個短暫的關係中,被調用類表現爲調用類的局部變量、方法的參數、以及調用類調用被調用類的靜態方法,在這些情況下,我們說調用類和被調用類之間就屬於依賴關係。
關聯是對象間長期的一種關係,在這個長期的關係中,被調用類表現爲調用類的引用、或者調用類的屬性,在這些情況下,我們說調用類和被調用類之間就屬於關聯關係。
常見的關聯關係有:一對一關係、一對多關係、多對多關係,例如典型的客戶與訂單、公司與員工的關係就是一種關聯關係。
實例:
一、依賴關係:
1、作爲調用類的局部變量
Class A
{
Void MethodA()
{
B b = new B();
b.MethodB();
}
}
2、作爲調用類方法的參數
Class A
{
Void MethodA(B b)
{
b.MethodB();
}
}
3、調用被調用類的靜態方法
Class A
{
Void MethodA()
{
B.StaticMethod();
}
}
二、關聯關係
1、作爲調用類的引用
Class A
{
B b;
Public Class A
{
b = new B();
}
Void MethodA()
{
b.MethodB();
}
}
2、作爲調用類的屬性
Class A
{
B b;
Public PropertyB
{
Get { return this.b; }
Set { this.b = value; }
}
}