标签:des style blog http color os
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DesignModel { public class Proxy:IAction { ZQZ zzz = null; public Proxy(ZQZ mm) { zzz = mm; } public void SendFlower() { zzz.SendFlower(); } public void SendCake() { zzz.SendCake(); } } public interface IAction { void SendFlower(); void SendCake(); } public class ZQZ : IAction { public string myname { set; get; } public void SendFlower() { Console.WriteLine(myname+"送花"); } public void SendCake() { Console.WriteLine(myname+"送蛋糕"); } } }
客户端调用:
1 ZQZ zzz = new ZQZ(); 2 zzz.myname = "朱建军"; 3 Proxy p = new Proxy(zzz); 4 p.SendFlower(); 5 p.SendCake();
代理模式分类:
1. 远程代理,也就是为一个对象在不同的地址空间提供局部代表,这样可以隐藏一个对象存在于不同地址空间的事实。
例如: webservice 服务
2. 虚拟代理, 是根据需要创建开销很大的对象。通过它来存放实例化需要很长时间的真是对象。
浏览器当中是用代理模式来优化下载页面的
3.安全代理
用来控制真实对象访问时的权限。
4.智能指引
是指调用真实对象时,代理处理另外一些事。
标签:des style blog http color os
原文地址:http://www.cnblogs.com/zhanjun/p/3861577.html