2

3
import java.lang.reflect.Method;4
import java.lang.reflect.ParameterizedType;5
import java.lang.reflect.Type;6
import java.util.List;7
import java.util.Map;8

9

public class TempTest
{10

11

public static void main(String[] args) throws Exception
{12
Method[] methods = TempTest.class.getDeclaredMethods();13

for (Method method : methods)
{14
System.out.println("method:" + method.getName());// 方法名15

16
// //////////////方法的参数17
System.out.println(" paramTypeType: ");18
Type[] paramTypeList = method.getGenericParameterTypes();// 方法的参数列表19

for (Type paramType : paramTypeList)
{20
System.out.println(" " + paramType);// 参数类型21

if (paramType instanceof ParameterizedType)/**//* 如果是泛型类型 */
{22
Type[] types = ((ParameterizedType) paramType)23
.getActualTypeArguments();// 泛型类型列表24
System.out.println(" TypeArgument: ");25

for (Type type : types)
{26
System.out.println(" " + type);27
}28
}29
}30

31
// //////////////方法的返回值32
System.out.println(" returnType: ");33
Type returnType = method.getGenericReturnType();// 返回类型34
System.out.println(" " + returnType);35

if (returnType instanceof ParameterizedType)/**//* 如果是泛型类型 */
{36
Type[] types = ((ParameterizedType) returnType)37
.getActualTypeArguments();// 泛型类型列表38
System.out.println(" TypeArgument: ");39

for (Type type : types)
{40
System.out.println(" " + type);41
}42
}43

44
}45

46
}47

48

public static String method1(List list)
{49
return null;50
}51

52

private static Map<String, Double> method2(Map<String, Object> map)
{53
return null;54
}55

56
}
2062




被折叠的 条评论
为什么被折叠?



