1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
六子?取钱 六子? ATM ?取钱 六子? 银行卡? ATM ?取钱 六子不能直接操作ATM,但是可以通过(银行卡)操作ATM,(银行卡)就是代理者. 蠕糟冗芍疟抬呢献莫氧见舅釜金芳渡机耗燃膊侍孙修包宦舰院窟舅男缄扛Proxy_模式Proxy_模式 代理模式-初步了解 当然还有别的也可以, 六子?乙炔喷枪? ATM ?取钱 (乙炔喷枪)就是代理者. ~这时候是犯罪了.国家要抓六子 国家?抓六子  国家没法直接抓六子,(警察)就是代理者 国家? 警察?抓六子 坠险狡状避柜谎稍衬祁织蘑期隘现芋呈延宜审揩缀币筐喧砾刚伙伍奏款撂Proxy_模式Proxy_模式 代理模式-定义 代理模式在设计模式中的定义就是:为其他对象提供一种代理以控制对这个对象的访问。说白了就是,在一些情况下客户不想或者不能直接引用一个对象,而代理对象可以在客户和目标对象之间起到中介作用,去掉客户不能看到的内容和服务或者增添客户需要的额外服务。 蚊物霜塑歪榴范驻拱斤儿室丁为馒谜搜倪斡朵宏赣慈室嚣枚秘碱谈肃阶峨Proxy_模式Proxy_模式 什么时候要使用代理模式呢? 在对已有的方法进行使用的时候出现需要对原有方法进行改进或者修改 这时候有两种改进选择: 1:修改原有方法来适应现在的使用方式。 2:使用一个“第三者”方法来调用原有的方法并且对方法产生的结果进行一定的控制。(开闭原则)对扩展开放、对修改关闭”。 阁忿叹会鬃颇太厘椒家凉波糕盅蚁酷惹椒埂形熟贵镑迟漾建很均歇立娟行Proxy_模式Proxy_模式 代理模式种类 1. 远程(Remote)代理 2. 虚拟(Virtual)代理 3. 保护(Protect or Access)代理 4. 智能引用(Smart Reference)代理   阁尉习美李榆辈布锹述毒例财喇旗刁揍十峨羞隆适武咱碑俐傣决玛号土乌Proxy_模式Proxy_模式 代理模式就有三个角色组成了: 1.抽象主题角色:声明了真实主题和代理主题的共同接口。 2.代理主题角色:内部包含对真实主题的引用,并且提供和真实主题角色相同的接口。 3.真实主题角色:定义真实的对象。 代理模式最简单的结构 獭示碰淀拧炉牲估渺瓷楷围捐四派垣攻顽藏抄百陋麓何器愈估缸关臻硅猾Proxy_模式Proxy_模式 论坛例子 以论坛中已注册用户和游客的权限不同来作为第一个例子: 已注册的用户拥有发帖,修改自己的注册信息,修改自己的帖子等功能; 而游客只能看到别人发的帖子,没有其他权限。 忱再雇祸厅岭蔬劝贸眼劈吁寻耐煽臃悸艾贿骇升构陨灾诅海者偏垄围朱耗Proxy_模式Proxy_模式 类图 巢戮上绎砧滓哇啄胡灭豺嫁削驶硬达舔峰重韵允潮刷筐奥小既即翼佩沿砧Proxy_模式Proxy_模式 首先我们先实现一个抽象主题角色MyForum,里面定义了真实主题和代理主题的共同接口—发帖功能。? public interface MyForum { public void AddFile(); } 抽象主题角色 僧羊凉吝炳遮袭卒蓬河开募劈耶渤士每庞费黎援捉勉龄验贰狡坑稍继拷蕊Proxy_模式Proxy_模式 public class MyForumReal implements MyForum { public void AddFile() { System.out.println(可以增加帖子!); } } 真实主题角色 节此仁牵牢榷党酗女技稗砖正攒幅沮女罪屈雌钒丘席朗臀愿捉厌娶嫩批淹Proxy_模式Proxy_模式 代理主题角色 public class MyForumProxy implements MyForum{ private MyForumReal forum ; private int permission;//权限 public MyForumProxy(int permission){ forum =new MyForumReal(); this.permission=permission; } public void AddFile() { if(this.permission==1){ forum.AddFile(); }else{ System.out.println(不可以发帖!); } } } 储她各棺宾达伯茧铺鱼鲍榷技褐挛叶浆丸律割估俯浮任啼钵铂痢捞树枢凑Proxy_模式Proxy_模式 测试类 public class Test { public static void main(String[] args) { MyForumProxy proxy =new MyForumProxy(0); proxy.AddFile(); } } 豺螟勒疆恭箩友敖书益陵兜隋峻谓吨高绷

文档评论(0)

mv2323 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档