您的位置:首页 > 房产 > 家装 > 设计模式-代理模式

设计模式-代理模式

2024/10/6 14:31:51 来源:https://blog.csdn.net/qq_25699299/article/details/140614180  浏览:    关键词:设计模式-代理模式

代理模式是常用的设计模式之一,其目的是为其他对象提供一个代理以控制对这个对象的访问。在C#中,代理模式可以通过使用委托和事件来实现。

以下是一个简单的代理模式的C#示例:

// 定义一个抽象的Subject接口
public interface ISubject
{void DoAction();
}// 实现Subject接口的具体实现
public class RealSubject : ISubject
{public void DoAction(){Console.WriteLine("RealSubject is doing something.");}
}// 定义一个保存具体实现的对象引用的代理类
public class Proxy : ISubject
{private ISubject _realSubject;public Proxy(ISubject realSubject){this._realSubject = realSubject;}public void DoAction(){Console.WriteLine("Proxy: Doing something before.");_realSubject.DoAction(); // 调用实际对象的方法Console.WriteLine("Proxy: Doing something after.");}
}// 使用代理
public class Program
{public static void Main(string[] args){ISubject realSubject = new RealSubject();ISubject proxy = new Proxy(realSubject);proxy.DoAction();}
}

在这个例子中,ISubject是一个定义了操作的接口,RealSubject是实现了该接口的具体类,而Proxy是代理类,它包含了对RealSubject的引用。当客户端通过代理调用DoAction方法时,代理会在调用实际对象之前和之后执行一些操作。这是一个简单的代理模式示例。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com