我正在使用'参数' java 8中的类获取参数的名称。
public class ParamTest {
public void newMethodParamTest() {
try {
Method[] declaredMethods = ParamTest.class.getDeclaredMethods();
for (Method declaredMethod : declaredMethods) {
if (declaredMethod.getName().equals("testObj")) {
System.out.println(getParameterNames(declaredMethod));
break;
}
}
}
catch(Exception e) {
e.printStackTrace();
}
}
public void testObj(int num) {
System.out.println(num);
}
public static List<String> getParameterNames(Method method) {
System.out.println(method.getName());
Parameter[] parameters = method.getParameters();
List<String> parameterNames = new ArrayList<>();
for (Parameter parameter : parameters) {
String parameterName = parameter.getName();
parameterNames.add(parameterName);
}
return parameterNames;
}
public static void main(String[] args) {
ParamTest test = new ParamTest();
test.newMethodParamTest();
}
现在,当我运行此代码时,返回的值始终为arg0
。我期待看到的是num
。