在反射的时候咱们能够经过class的getParameterNames()反射得到参数的名称,可是这个名称并非参数的真实名称,而是相似于arg0,arg1等占位名称。java
下面介绍一种方法得到参数真实名称blog
DefaultParameterNameDiscoverer discover = new DefaultParameterNameDiscoverer(); String[] parameterNames = discover.getParameterNames(method);
其中parameterNames就是参数的真实名称。get
例如foo(string a, string b)string
若是使用class.getParameterNames()会得到arg0, arg1.class
而使用ParameternameDsicoverer得到的是a, b反射