我有一個問題,我需要解決類型的類替換泛型類型參數。下面是代碼:如何從泛型中獲取類的類型信息?
public class EnumSetPlay {
private enum SomeEnum {ONE, TWO}
private static class Test<E extends Enum> {
private Class<E> clazz = (Class<E>) GenericTypeResolver.resolveTypeArgument(getClass(), Test.class);;
public void test() {
for (E element : EnumSet.allOf(clazz))
System.out.println(element);
}
}
public static void main(String... args) {
new Test<SomeEnum>().test();
}
}
我需要類類型SomeEnum。 我試圖用簧GenericTypeResolver類,但我有一個錯誤:
error: incompatible types required: E found: Object where E is a type-variable: E extends Enum declared in class Test
它通常是更好地與輸入'>' –
2012-04-19 14:06:24
我修復,但現在我有NullPointerException,因爲clazz是null。 – user1289877 2012-04-19 14:29:45