JDK1.8 通过在编译的时候增加-parameters选项,以及增加反射 API 与Parameter.getName() 方法实现了获取方法参数名的功能。
Java 代码如下所示:
import java.lang.reflect.Method;
import java.lang.reflect.Parameter;
public class Test {
public static void main(String[] args) {
Method method;
try {
method = Test.class.getMethod("main", String[].class);
for (final Parameter parameter : method.getParameters()) {
System.out.println("Parameter: " + parameter.getName());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
下面我们使用两种命令来运行上述程序,将得到不同的结果: