java设计模式学习-代理模式

代理模式即Proxy Pattern,23种java常用设计模式之一。代理模式的定义:对其他对象提供一种代理以控制对这个对象的访问。

代理模式分类:
1、远程代理(Remote Proxy)——为不同地理的对象提供局域网代表对象。(类似于客户端和服务器端)
2、虚拟代理(Virtual Proxy)——根据需要将资源消耗很大的对象进行延迟,真正需要的时候才进行创建。(网页中图片的加载,先用一张虚拟的图片进行显示,等图片加载完成后再进行显示)
3、保护代理(Protect Proxy)——控制用户的访问权限。(发帖功能)
4、智能引用代理(Smart Reference Proxy)——提供对目标对象一些额外的服务。(火车站代售处为火车站代理)

对智能引用代理来说,它有两种实现方式:

  1. 静态代理
    java设计模式学习-代理模式_第1张图片
  2. 动态代理
    有两种方式,JDK动态代理和CGLIB动态代理,其都是为了动态产生代理,实现对不同类,不同方法的代理。
    JDK动态代理实现步骤:
    java设计模式学习-代理模式_第2张图片

java设计模式学习-代理模式_第3张图片

来自:
慕课

你可能感兴趣的:(java)