.NET 代理(Proxy)模式

目录

  1. 定义
  2. UML
  3. 参与者
  4. 示例

定义:

代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。

UML:

参与者:

抽象主题(Subject)角色:

声明了代理主题和真实主题的公共接口,使任何需要真实主题的地方都能用代理主题代替.

具体主题(RealSubject)角色:

实现抽象主题角色的具体对象。

代理主题(Proxy)角色:

含有真实主题的引用,从而可以在任何时候操作真实主题,代理主题功过提供和真实主题相同的接口,使它可以随时代替真实主题.代理主题通过持有真实主题的引用,不但可以控制真实主题的创建或删除,可以在真实主题被调用前进行拦截,或在调用后进行某些操作.

示例:

代码

 

Output

Called RealSubject.Request()

实际运用:

代码

 

Output

4 + 2 = 6
4 - 2 = 2
4 * 2 = 8
4 / 2 = 2

posted @ 2011-11-23 22:24  Lee's Blog  阅读(2785)  评论(0编辑  收藏  举报