打字猴:1.700460036e+09
1700460036 proxy.login(“zhangSan”,“password”);
1700460037
1700460038 //开始杀怪
1700460039
1700460040 proxy.killBoss();
1700460041
1700460042 //升级
1700460043
1700460044 proxy.upgrade();
1700460045
1700460046 //记录结束游戏时间
1700460047
1700460048 System.out.println(“结束时间是:2009-8-26 03:40”);
1700460049
1700460050 }
1700460051
1700460052 }
1700460053
1700460054 运行结果也完全相同,还是张三这个用户在打怪,运行结果如下:
1700460055
1700460056 开始时间是:2009-8-25 10:45
1700460057
1700460058 登录名为zhangSan的用户张三登录成功!
1700460059
1700460060 张三在打怪!
1700460061
1700460062 张三又升了一级!
1700460063
1700460064 结束时间是:2009-8-26 03:40
1700460065
1700460066 是的,没有任何改变,但是你有没有发觉,你的游戏已经在升级,有人在帮你干活了!终于升级到120级,基本上在本服务区,除了GM外,这个你可惹不起!这就是代理模式。
1700460067
1700460068
1700460069
1700460070
1700460071 设计模式之禅 [:1700453963]
1700460072 设计模式之禅 12.2 代理模式的定义
1700460073
1700460074 代理模式(Proxy Pattern)是一个使用率非常高的模式,其定义如下:
1700460075
1700460076 Provide a surrogate or placeholder for another object to control access to it.(为其他对象提供一种代理以控制对这个对象的访问。)
1700460077
1700460078 代理模式的通用类图如图12-3所示。
1700460079
1700460080
1700460081
1700460082
1700460083 图12-3 代理模式的通用类图
1700460084
1700460085 代理模式也叫做委托模式,它是一项基本设计技巧。许多其他的模式,如状态模式、策略模式、访问者模式本质上是在更特殊的场合采用了委托模式,而且在日常的应用中,代理模式可以提供非常好的访问控制。在一些著名开源软件中也经常见到它的身影,如Struts2的Form元素映射就采用了代理模式(准确地说是动态代理模式)。我们先看一下类图中的三个角色的定义:
[ 上一页 ]  [ :1.700460036e+09 ]  [ 下一页 ]