java asm label获取调用方法

Python010

java asm label获取调用方法,第1张

通过反射调用。

java动态代理是利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理。而cglib动态代理是利用asm开源包,对代理对象类的class文件加载进来,通过修改其字节码生成子类来处理。

ASM 是一个 Java 字节码操控框架,它能被用来动态生成类或者增强既有类的功能,ASM 可以直接产生二进制 class 文件,也可以在类被加载入 Java 虚拟机之前动态改变类行为。

等同于java代码:

System.currentTimeMillis()

替换成time.zz()(要求time是类名,不是对象,zz是静态方法)

很容易就出错。