代理模式:
智能引用代理,应用最广:日志处理,权限管理,事物处理
静态代理 (继承,会让代理无限制的膨胀下去,聚合(推荐)两种方式实现代理)
动态代理(真心很强大得样子) jdk动态代理(实现接口的类才能用), cglib动态代理。
虚拟代理 :对资源消耗很多或很复杂的对象进行延迟,真正需要的时候再进行创建
远程代理 :为一个位于不同地址空间的对象提供一个局域网内的对象。客服端服务器模式。远程通信的缩影
智能引用代理 :提供为目标对象一些额外的服务
保护代理:控制对一个对象访问的权限
代理的用处,有时候我们没法对源码进行更改,这时候我们可以代理处相应源码然后加入我们的逻辑,这也就面向切面编程AOP。不改变原有类和方法基础上增加一些额外的
业务逻辑