代理模式(Proxy),為其他對象提供一種代理以控制對這個對象的通路。
代理模式類圖如下:
在代理模式中的角色:
● 抽象對象角色:聲明了目标對象和代理對象的共同接口,這樣一來在任何可以使用目标對象的地方都可以使用代理對象。
● 目标對象角色:定義了代理對象所代表的目标對象。
● 代理對象角色:代理對象内部含有目标對象的引用,進而可以在任何時候操作目标對象;代理對象提供一個與目标對象相同的接口,以便可以在任何時候替代目标對象。代理對象通常在用戶端調用傳遞給目标對象之前或之後,執行某個操作,而不是單純地将調用傳遞給目标對象。