org.nutz.lang.util
类 MethodParamNamesScaner

java.lang.Object
  继承者 org.nutz.lang.util.MethodParamNamesScaner

public class MethodParamNamesScaner
extends java.lang.Object

通过读取Class文件,获得方法形参名称列表

作者:
wendal(wendal1985@gmail.com)

构造方法摘要
MethodParamNamesScaner()
           
 
方法摘要
static void getDescriptor(java.lang.StringBuilder buf, java.lang.Class<?> c)
          本方法来源于ow2的asm库的Type类
static void getDescriptor(java.lang.StringBuilder sb, java.lang.reflect.Constructor<?> constructor)
           
static void getDescriptor(java.lang.StringBuilder sb, java.lang.reflect.Method method)
           
static java.lang.String getKey(java.lang.Object obj)
          传入Method或Constructor,获取getParamNames方法返回的Map所对应的key
static java.util.Map<java.lang.String,java.util.List<java.lang.String>> getParamNames(java.lang.Class<?> klass)
          获取一个类的所有方法/构造方法的形参名称Map
static java.util.List<java.lang.String> getParamNames(java.lang.reflect.Constructor<?> constructor)
          获取Constructor的形参名称列表
static java.util.Map<java.lang.String,java.util.List<java.lang.String>> getParamNames(java.io.InputStream in)
           
static java.util.List<java.lang.String> getParamNames(java.lang.reflect.Method method)
          获取Method的形参名称列表
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

MethodParamNamesScaner

public MethodParamNamesScaner()
方法详细信息

getParamNames

public static java.util.List<java.lang.String> getParamNames(java.lang.reflect.Method method)
获取Method的形参名称列表

参数:
method - 需要解析的方法
返回:
形参名称列表,如果没有调试信息,将返回null

getParamNames

public static java.util.List<java.lang.String> getParamNames(java.lang.reflect.Constructor<?> constructor)
获取Constructor的形参名称列表

参数:
constructor - 需要解析的构造函数
返回:
形参名称列表,如果没有调试信息,将返回null

getParamNames

public static java.util.Map<java.lang.String,java.util.List<java.lang.String>> getParamNames(java.lang.Class<?> klass)
                                                                                      throws java.io.IOException
获取一个类的所有方法/构造方法的形参名称Map

参数:
klass - 需要解析的类
返回:
所有方法/构造方法的形参名称Map
抛出:
java.io.IOException - 如果有任何IO异常,不应该有,如果是本地文件,那100%遇到bug了

getParamNames

public static java.util.Map<java.lang.String,java.util.List<java.lang.String>> getParamNames(java.io.InputStream in)
                                                                                      throws java.io.IOException
抛出:
java.io.IOException

getKey

public static java.lang.String getKey(java.lang.Object obj)
传入Method或Constructor,获取getParamNames方法返回的Map所对应的key


getDescriptor

public static void getDescriptor(java.lang.StringBuilder sb,
                                 java.lang.reflect.Method method)

getDescriptor

public static void getDescriptor(java.lang.StringBuilder sb,
                                 java.lang.reflect.Constructor<?> constructor)

getDescriptor

public static void getDescriptor(java.lang.StringBuilder buf,
                                 java.lang.Class<?> c)
本方法来源于ow2的asm库的Type类