ParameterizedType

(Class<T> ) ((ParameterizedType) getClass()
.getGenericSuperclass()).getActualTypeArguments()[0];


the code above causes a cast exception:
java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType


and it is because:
Reflection on generic parameters can happen only if you define parameters types at compile time rather than at run time.

你可能感兴趣的:(java)