设计模式五(代理模式)
首先说明代理模式的作用范围
1.远程代理
2.虚拟代理:当一个对象的创建比较消耗资源的时候,我们可以建立一个代理类,用缓存的机制
来保存这个对象的实例,然后用代理类的方法调用这个实例的方法,让外面看上去是在调用实例
本身一样。
3.安全代理,用来控制真实对象访问时的权限
4.智能指引:也就是在调用对象的方法的时候在做一些额外的其他信息,比如真实对象的引用次数,
或者判断对象是否已经被锁定等一系列的额外操作
其次图解

最后代码展示
class Program
{
static void Main(string[] args)
{
Proxy proxy = new Proxy();
proxy.Request();
Console.Read();
}
}
abstract class Subject
{
public abstract void Request();
}
class RealSubject : Subject
{
public override void Request()
{
Console.WriteLine("真实的请求");
}
}
class Proxy : Subject
{
RealSubject realSubject;
public override void Request()
{
if (realSubject == null)
{
realSubject = new RealSubject();
}
realSubject.Request();
}
}

浙公网安备 33010602011771号