天天看點

【軟體設計模式】代理模式

代理模式(Proxy),為其他對象提供一種代理以控制對這個對象的通路。

代理模式類圖如下:

  

【軟體設計模式】代理模式
【軟體設計模式】代理模式
【軟體設計模式】代理模式

  在代理模式中的角色:

  ●  抽象對象角色:聲明了目标對象和代理對象的共同接口,這樣一來在任何可以使用目标對象的地方都可以使用代理對象。

  ●  目标對象角色:定義了代理對象所代表的目标對象。

  ●  代理對象角色:代理對象内部含有目标對象的引用,進而可以在任何時候操作目标對象;代理對象提供一個與目标對象相同的接口,以便可以在任何時候替代目标對象。代理對象通常在用戶端調用傳遞給目标對象之前或之後,執行某個操作,而不是單純地将調用傳遞給目标對象。