import java.lang.reflect.Method;
import java.lang.reflect.Parameter;
/**
* 使用–parameters参数编译为class文件后,保留参数名字。
* @author fuhm3
*/
public class TestClass {
public static void main(String[] args) throws ClassNotFoundException {
Class classObject = Class.forName("com.ai.accm.saas.service.interfaces.IStaticResourceForSaasSV");
Method[] methods = classObject.getDeclaredMethods();
for(int i=0;i<methods.length;i++){
final Parameter[] parameters = methods[i].getParameters();
for(final Parameter p : parameters){
System.out.println(p.isNamePresent()+" "+p.getName() );
}
}
System.out.println("-------------end-------------");
}
}
保留参数名这一选项由编译开关javac -parameters
打开,则:参数名称被编译进了class文件。
保留参数名这一选项由编译开关javac -parameters
关闭,则:参数名称是无意义的org0、org1...
但是,javac -parameters
默认是关闭的,在eclipse中可以在 Preferences -- compiler -- store information about method parameters(usable via reflection) 打开。