代理模式
来源:互联网 发布:linux vi编辑最后一行 编辑:程序博客网 时间:2024/05/29 08:16
概念
代理模式(proxy),为其他对象提供一种代理以控制对这个对象的访问.
类图
源码
//功能接口public interface Subject { void request();}//功能具体实现接口public class RealSubject implements Subject { public void request() { System.out.println("真实的请求"); }}//代理类public class Proxy implements Subject { private RealSubject realSubject; public void setRealSubject(RealSubject realSubject) { this.realSubject = realSubject; } public void request() { if (realSubject != null) { befroe(); realSubject.request(); after(); } } private void befroe() { System.out.println("代理前操作"); } private void after() { System.out.println("代理后操作"); }}public class Test { public static void main(String[] args) { RealSubject real = new RealSubject(); Proxy proxy = new Proxy(); proxy.setRealSubject(real); proxy.request(); }}
代理模式在访问对象时引入一定程度的间接性,因为这种间接性,我们就可以附加多种用途了.
貌似spring的切面就是通过动态代理技术实现的.
0 0
- 代理模式--动态代理
- 代理模式-静态代理
- 代理模式-静态代理
- 代理模式 & 动态代理
- 代理模式--静态代理
- 代理模式--动态代理
- 代理模式(动态代理)
- 代理模式-动态代理
- 代理模式-动态代理
- 代理模式动态代理
- 代理模式-静态代理
- 代理模式-动态代理
- 代理模式 -动态代理
- 代理模式---动态代理
- 代理模式-动态代理
- 代理模式--静态代理
- 代理模式!
- 代理模式
- cocos2d iOS添加广告
- <LeetCode OJ> 283. Move Zeroes
- Javacript中文传参Java解码说明(附参考资料)
- 常用正则
- input替换为a标签,onclick事件不触发
- 代理模式
- Python第三方库的安装方法
- 极光推送1
- Python游戏开发
- Fragment的深入浅出
- 多线程编程与同步控制(Java与C)
- 【详解】更新整个maven工程及相关底层并再运行的记录
- asp.net 母版页使用详解
- dos批处理:列出指定目录下所有文件