当我想在泛型类中使用泛型类的类时,我得到了一个类型安全警告,下面的代码将更好地解释:
class A<U, V> {
private class B<W, X> {
X x;
W w;
}
public A() {
B<U, V> c = C.someMethod(B.class); // warning here
}
static class C {
public static <T> T someMethod(Class<T> clazz) {
return null;
}
}
}
有什么办法解决这个问题吗?
请注意b班是私人的。
1条答案
按热度按时间nszi6y051#
在此行中设置对编译器不重要的类型时,您的工作不正确:
对编译器来说,只有b表示恐慌。所以你应该写。