代理模式介绍
代理模式:为其他对象提供一种代理以便控制对这个对象的访问。
可以详细控制访问某个类(对象)方法,在调用这个方法前作的前置处理(统一的流程代码放在代理中处理)。调用这个方法后作后置处理。
例如:明星的经纪人,租房的中介等等都是代理
代理模式分类:
1、静态代理(指定)
2、动态代理(通过动态程序自动生成代理类,该代理类不是我们自己定义的。而是由程序自动生成的)
JDK自带的动态代理
javaassist字节码操作库实现
GGLB
ASM(底层使用指令 实用性差)
静态代理: 定义一个代理接口(接口方法,定义一些公用操作方法)
实现代理接口 (属性包括原对象)并实现一些对原对象的一些操作
实现原对象
动态代理:定义一个代理接口(接口方法,定义一些公用操作方法)
可以实现多个实际的类 需要操作的时候 可以注入到 代理类里面进行操作
实现一个代理类 继承(java.lang.reflect.InvocationHandler)接口(可以注入这个这个接口的其他实现以方便操作)
[参考地址](https://www.cnblogs.com/meet/p/5116464.html)