1、静态代理package com.pattern.proxy;/*** 图像的基类* @author Leon.Sun**/
public interface Image {/*** 显示图像*/public abstract void showImage();
}
具体类package com.pattern.proxy;/*** 大图像的类* @author Leon.Sun**/
public class BigImage implements Image {@Overridepublic void showImage() {System.out.println("这是一张大图片,显示在网页上");}}
代理类package com.pattern.proxy;/*** 代理图像的类* @author Leon.Sun**/
public class ProxyImage implements Image{// 真实的大图像private BigImage m_BigImage;// 显示图像之前的一些操作public void showImagePre() {System.out.println("图像很大,先暂时用一个和图像一样大的方框代表图像");}@Overridepublic void showImage() {this.showImagePre();if(m_BigImage==null){m_BigImage=new BigImage();}m_BigImage.showImage();this.showImageAft();}public void showImageAft(){System.out.println("图像显示完成");}}
使用package com.pattern.proxy;public class TestMain {public static void main(String[] args) {      ProxyImage proxyImage = new ProxyImage();proxyImage.showImage();       }}
图像很大,先暂时用一个和图像一样大的方框代表图像
这是一张大图片,显示在网页上
图像显示完成
三、优缺点1、优点(1)代理模式能够协调调用者和被调用者,能够在一定程度上降低系统的耦合度。(2)当对象在远程机器上,要通过网络来生成时速度可能会很慢,此时应用代理模式可以掩盖对象在网络上
生成的过程,系统的速度会加快。(3)对于大对象的加载(如大图片),虚拟代理可以让加载过程在后台执行,前台使用的代理对象会使得整体
运行速度得到优化。2、缺点代理模式的缺点是请求的处理速度会变慢,并且实现代理模式需要额外的工作。

设计模式------代理模式相关推荐

  1. Python设计模式-代理模式

    Python设计模式-代理模式 基于Python3.5.2,代码如下 #coding:utf-8info_struct = dict() info_struct["addr"] = ...

  2. Java设计模式(代理模式-模板方法模式-命令模式)

    Java设计模式Ⅴ 1.代理模式 1.1 代理模式概述 1.2 静态代理 1.2.1 静态代理概述 1.2.2 代码理解 1.3 动态代理之JDK代理 1.3.1 动态代理之JDK代理概述 1.3.2 ...

  3. 设计模式——代理模式

    设计模式--代理模式 代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能 ...

  4. 23种设计模式----------代理模式(一)

    代理模式也叫委托模式. 代理模式定义:对其他对象提供一种代理从而控制对这个对象的访问.就是,代理类 代理 被代理类,来执行被代理类里的方法. 一般情况下,代理模式化有三个角色. 1,抽象的主题类(或者 ...

  5. java设计模式代理模式_Java中的代理设计模式

    java设计模式代理模式 代理对象或代理对象为另一个对象提供占位符,以控制对该对象的访问. 代理充当原始对象的轻量级版本或简化版本. 它支持与原始对象相同的操作,但可以将那些请求委托给原始对象以实现它 ...

  6. 第四章 Caché 设计模式 代理模式

    文章目录 第四章 Caché 设计模式 代理模式 定义 类型 使用场景 优点 缺点 结构图 完整示例 抽象主题类 真实主题类 代理类 对象类 调用 思考 第四章 Caché 设计模式 代理模式 定义 ...

  7. Android常见设计模式——代理模式(Proxy Pattern)(二)

    文章目录 1. 前言 2. 远程代理(Remote Proxy) 3. 后记 1. 前言 在上篇Android常见设计模式--代理模式(Proxy Pattern)中基本上知道了什么是代理模式,以及对 ...

  8. sheng的学习笔记-设计模式-代理模式

    原理图: 代理模式的定义:由于某些原因需要给某对象提供一个代理以控制对该对象的访问.这时,访问对象不适合或者不能直接引用目标对象,代理对象作为访问对象和目标对象之间的中介. 至少在以下集中情况下可以用 ...

  9. 设计模式-代理模式(Proxy Pattern)

    设计模式-代理模式(Proxy Pattern) 文章目录 设计模式-代理模式(Proxy Pattern) 一.定义 二.概念解释 三.场景 四.实现 1.类图 2.代码实现 五.小结 六.动态代理 ...

  10. 简说设计模式——代理模式

    一.什么是代理模式 关于代理模式,我们听到的见到的最多的可能就是静态代理.动态代理之类的,当然还有大家都知道的Spring Aop,这里我们先不谈这些个代理,先说个简单的例子.游戏代练应该都听说过,许 ...

最新文章

  1. 学习动力之“学习金字塔 (爱德加•戴尔)”理论
  2. 脑电分析系列 | eeglab汇总
  3. 如何在多线程中调用winform窗体控件2——实例篇
  4. centos 日志切割_centos自带的日志切割工具 --- logrotate
  5. 原生安全二倍速:探秘基础设施的内生“免疫系统“
  6. Golang之实现一个负载均衡算法(随机,轮询)
  7. Spring Boot定制启动图案
  8. Factorials 阶乘
  9. webpack+vue-cli 中proxyTable配置接口地址代理
  10. plsql developer 创建表空间和临时表
  11. cgi java编程_Java的CGI数据编码改如何编写
  12. springMVC 解决硬编码问题
  13. UVA10738 Riemann vs Mertens【欧拉筛法】
  14. python最大公约数计算。从键盘接收两个整数_python如何求解两数的最大公约数
  15. a form 出口享惠情况_进出口报关
  16. c语言递归思想实践-整形数组求极值问题
  17. 微信群二维码七天失效如何解决?有没有办法创建一个长期有效的微信群?
  18. #网络流24# 餐巾计划问题
  19. 一键生成表白页面,个人网站,在线制作生成网站php源码
  20. 感恩,生命的馈赠(2014年终总结)

热门文章

  1. 搞定ubuntu下环境变量的配置
  2. [译]GLUT教程 - 每秒帧数
  3. 在Visual Studio 2005中安装Qt 4.3.2
  4. Oracle序列小结
  5. 分页控件 实战 Post篇
  6. [Wrong Answer] Leetcode 805 JavaScript 解决方案 数组的均值分割
  7. 企业大数据应用成熟度如何?大多数企业处于自嗨中
  8. codeforces VK Cup 2018 - Wild-card Round 1 (unofficial unrated mirror)
  9. 利用A、G、DL、P策略来管理网络资源访问权限
  10. 2009年3月28日四级网络工程师 试卷答案、点评及讨论