泛型继承自接口
示例 : 想获取泛型 K 和 V 的类型
public class RedisCache<K, V> implements Cache<K, V> {
public V get(K key) throws CacheException {
Class value_clazz = ... //想要获取泛型V的真实class
//...
}
}
我使用 clazz.getGenericSuperclass的方式获取ParameterizedType但是强转失败
Class clazz = this.getClass() ;
Type gs_type = clazz.getGenericSuperclass();
ParameterizedType pt = (ParameterizedType)gs_type ;
发生以下异常 :
java.lang.ClassCastException: java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType