原理 编译之后的class文件默认是不带有参数名称信息的,使用 IDE 时,反编译jar包得到的源代码函数参数名称是 arg0,arg1......这种形式,这是因为编译 jar 包的时候没有把符号表编译进去. JDK1.7 及以下版本的 API 并不能获取到函数的参数名称,需要使用字节码处理框架,如 ASM.javassist 等来实现,且需要编译器开启输出调试符号信息的参数的-g.这个过程简单描述就是: 编译器javac使用-g输出调试符号信息到class文件 程序通过字节码解析框架解析cl…
java.lang.reflect.Method 一.Method类是什么 Method是一个类,位于java.lang.reflect包下. 在Java反射中 Method类描述的是 类的方法信息,通俗来讲 有一个类如下: package com.testReflect; public class MethodDemo { private int num = 2; private String str = "xixi"; public int addResult(int addNum…