加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

我的代理人(Proxy)

发布时间:2020-12-17 02:59:55 所属栏目:安全 来源:网络整理
导读:? 很显然.我们目前所生活的世界里.到处都有这类人.他们很愿意帮助我们去完成我自身完成起来很困难的工作.愿意充当一个中间层.在这一个层次中.Proxy代理就是主导.他会为我们处理那些看上去很别扭的事情.毕竟我们的目的是制定总体方针.儿细节可以交给代理来完

?

很显然.我们目前所生活的世界里.到处都有这类人.他们很愿意帮助我们去完成我自身完成起来很困难的工作.愿意充当一个中间层.在这一个层次中.Proxy代理就是主导.他会为我们处理那些看上去很别扭的事情.毕竟我们的目的是制定总体方针.儿细节可以交给代理来完成.事实上,很多情况.我们都用到了代理.例如典型的我们在.NET中使用WebService就已经在使用Proxy.通过这个代理和实际的远程对象打交道.实际的远程对象又是通过WebService做接口来传递.这也就是所谓的远程代理.当然还有很多的代理例子.如.你要写一个又权限的东西.所以客户不能自己和这种东西打交道.所以,由代理来管理权限而客户通过代理来和实际对象打交道.这也就是所谓的保护代理.实际上由于是代理所以客户也无需管理实际对象的释放和创建.这也是通过代理来完成的.
假设.我是一个骑士正要被一位美丽的公主接见.我很荣幸.不幸的是公主只和在这次战役有战功的人见面.所以必须出示我的勋章.才可以和公主见面.OK让我们来模拟这一场面.
namespace ProxyMeeting
{
??? using System;

?? intface IMeeting
?{
?? void KMeeting();??
?}

?class Knight : IMeeting
?{
??????????????????????? private? bool exploit ;
??????????????????????? private? string? KName;
??public Knight(string KN)
??{
??????????????????????????????????????????????? 从数据库查询是否有功绩
???? ?this.exploit=IsExploit;
??}
???
?????????????????? public void Request()
??{
???if(exploit)
??????????????????????????????????????????????? Console.WriteLine("接见成功");
??????????????????????????????????????????????? else
???????????????????????????????????????????????? Console.WriteLine("无法接见");
??}
?}

?class Proxy : IMeeting
?{
??private? Knight KM;
??????????????????????????????? public? string? KName;
?? public void Request()
??{
???if (KM == null)
????KM = new Knight(this.KName);
???KM.Request();
??}?
??
?}
?
//实际见面
?public class Infanta
??? {
??????? public static int Main(string[] args)
??????? {
?????????????????????? //公主并不直接和骑士打交道.而是通过代理
???Proxy p = new Proxy();
??????????????????????????????????????????????? p.KName="yarshray";
??????????????????????????????????????????????? P.Request();
???????????????? return 0;
??????? }
??? }
}

这里可以看出.公主并未和骑士直接打交道而是通过代理.即使骑士的创建工作也是由代理来完成.并且代理也管理了骑士是否在这次战役中建立功勋.来决定最终是否和公主见面.一切都很我们预想的一样不是吗?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读