设计模式--代理模式
来源:互联网 发布:乐视直播软件 编辑:程序博客网 时间:2024/06/10 15:41
其实每个模式名称就表明了该模式的作用,代理模式就是多一个代理类出来,替原对象进行一些操作。
public interface Sourceable { public void method(); }
public class Source implements Sourceable { @Override public void method() { System.out.println("the original method!"); } }
public class Proxy implements Sourceable { private Source source; public Proxy(){ super(); this.source = new Source(); } @Override public void method() { before(); source.method(); atfer(); } private void atfer() { System.out.println("after proxy!"); } private void before() { System.out.println("before proxy!"); } }
public class ProxyTest { public static void main(String[] args) { Sourceable source = new Proxy(); source.method(); } }
代理模式的应用场景:
如果已有的方法在使用的时候需要对原有的方法进行改进,此时有两种办法:
1、修改原有的方法来适应。这样违反了“对扩展开放,对修改关闭”的原则。
2、就是采用一个代理类调用原有的方法,且对产生的结果进行控制。这种方法就是代理模式。
使用代理模式,可以将功能划分的更加清晰,有助于后期维护!
0 0
- 设计模式--【代理模式】
- 设计模式:代理模式
- 设计模式--代理模式
- 设计模式---代理模式
- 设计模式-代理模式
- 设计模式---代理模式
- 设计模式 代理模式
- 设计模式-【代理模式】
- 设计模式-代理模式
- 设计模式----代理模式
- 设计模式-代理模式
- 设计模式---代理模式
- 设计模式--代理模式
- 设计模式-代理模式
- 设计模式- 代理模式
- 设计模式---代理模式
- 设计模式 - 代理模式
- 【设计模式】代理模式
- ubuntu 内核升级
- Struts2学习笔记二 国际化
- Python中的变量、引用和作用域
- Linux 下面编程提高代码执行效率的小技巧
- [leetcode-3]Longest Substring Without Repeating Characters(java)
- 设计模式--代理模式
- apache如何设置alias
- VMware8下桥接(bridged)设置
- java自定义队列并附带测试用例
- hdu5297 Y sequence(容斥原理+迭代)
- HDOJ 5293 Tree chain problem LCA+树链剖分+树形DP
- Android Studio 活动的启动模式 standard singleTop singleTask singleInstance 第一行代码
- 【学习笔记】android动画的不同实现方式以及要点
- Matlab绘图