Java examples for Reflection:Generic
get Method Generic Return Type
//package com.java2s; import java.lang.reflect.Method; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; public class Main { public static Class<?> getMethodGenericReturnType(Method method) { return chooseOneType(method.getReturnType(), method.getGenericReturnType()); }//from ww w. jav a 2 s . c o m static Class<?> chooseOneType(Class<?> literalType, Type genericType) { if (genericType instanceof ParameterizedType) { return digFromGenericType(genericType); } return literalType; } static Class<?> digFromGenericType(Type genericType) { Type[] typeArguments = ((ParameterizedType) genericType) .getActualTypeArguments(); Type type = typeArguments[0]; if (type instanceof ParameterizedType) { return digFromGenericType(type); } else { return (Class<?>) type; } } }