设计模式-静态代理模式
来源:互联网 发布:mac重装系统下载慢 编辑:程序博客网 时间:2024/06/05 18:51
1 代理模式在作用是:为其它对象提供一种代理难以控制对这个对象在访问.
2 在某些情况下,一个客户不想或者不能直接引用另外一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。
3 代理模式一般涉及到的角色有
-a抽象角色:声明真是对象和代理对象的共同接口
package com.cai.proxy;public abstract class Subject {public abstract void request();}
-b代理角色:代理对象角色内部含有对真实对象的应用,从而可以操作真实对象,同时代理对象提供与真实对象相同的接口,以便任何时刻都能代替真实对象。同时,代理对象可以在执行真实对象操作时,附加其它的操作,相对于对真实对象进行封装
package com.cai.proxy;public class ProxySubject extends Subject {private RealSubject realSubject ;//代理模式内部引用了真实角色public void request() {preRequest();//在真实角色操作之前所附加的操作if(null == realSubject){realSubject = new RealSubject();}realSubject.request();//真实角色所完成的事情postRequest();//在真实角色操作之后所附加的操作}private void preRequest(){System.out.println("pre request");}private void postRequest(){System.out.println("post request");}}
-c真实角色:代理角色所代表的真实对象,是我们最终要引用的对象。
package com.cai.proxy;public class RealSubject extends Subject {@Overridepublic void request() {System.out.println("From RealSubject");}}
测试类
package com.cai.proxy;public class Client {public static void main(String[] args) {Subject subject = new ProxySubject();subject.request();}}
4 java动态代理类位于java.lang.reflect包下
- 静态代理模式设计
- 静态代理设计模式
- 静态代理设计模式
- 静态代理设计模式
- 静态代理设计模式
- 设计模式-静态代理模式
- 设计模式-静态代理模式
- 设计模式(代理模式--静态代理)
- 设计模式 --代理模式--静态代理
- 设计模式之代理模式-静态代理
- 设计模式之代理模式(静态代理)
- 【设计模式】代理模式Proxy---静态代理
- 设计模式之代理模式------静态代理
- 设计模式01-代理模式(静态代理)
- 设计模式之静态代理设计模式
- 设计模式之静态代理
- 设计模式--代理(静态)
- 设计模式之静态代理
- ArcGIS API for Silverlight开发入门(3):Widgets
- J2EE全面简介
- Android 修改HOSTS解决办法
- linux unzip命令参数及用法详解--linux解压zip文件命令
- 导入EXCEL2007报错"外部表不是预期的格式错误"的解决方法
- 设计模式-静态代理模式
- ArcGIS API for Silverlight开发入门(4):用户与地理信息之间的桥梁--GraphicsLayer
- 2012-6-19
- 基于Apache在本地配置多个虚拟主机站点
- 中国第一个女程序员——张绮霞
- PS 批处理
- ArcGIS API for Silverlight开发入门(5):任务外包——Tasks
- wince bsp克隆 故障
- 分布式