- 泛型工具类
package com.tts.utils;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
/**
* 泛型工具
* @author KeXin
*
*/
public class GenericsUtils {
/**
* 获取泛型的类型
* @param clazz
* @return Class
*/
@SuppressWarnings("unchecked")
public static Class getGenericType(Class clazz){
Type genType = clazz.getGenericSuperclass();
Type[] types = ((ParameterizedType) genType).getActualTypeArguments();
if (!(types[0] instanceof Class)) {
return Object.class;
}
return (Class) types[0];
}
/**
* 获取对象的类名称
* @param clazz
* @return 类名称
*/
@SuppressWarnings("unchecked")
public static String getGenericName(Class clazz){
return clazz.getSimpleName();
}
}