委託是組件的複合技術,需要至少兩個組件
如果A組件又支持某一個特性的子組件B,則A也要提供這種特性:可以在A的內部將這個請求傳遞給B,由B來實現這個請求 ,A自己就不需要再支持這個特性了
使用委託時,B通常是A的子組件,在A的外部是無法訪問的
A有可能調用委託給並非A的子組件的組件,當A接受到調用,而將其傳遞給其他外部組件委託時,是設計模式中的外觀模式
委託使父組件也擁有了子組件的特性,而實際上並非父組件的特性,實際調用的是子組件的方法
簡單的例子
public class A
{
B b = new B();
public void zzz(){b.zzz()};
}
public class B
{
public void zzz(){};
}