【发布时间】:2017-07-07 19:11:12
【问题描述】:
以下最小示例在 Android Studio 上导致错误“Collection 无法转换为 LinkedList”:
class Factory<F extends Factory<F>> {
public <T extends Collection<?>> T empty(Class<T> clazz) {
try {
return clazz.newInstance();
} catch (Exception e) {
throw new Error(e);
}
}
}
class MyFactory extends Factory {
// ERROR is displayed here
LinkedList<?> list = empty(LinkedList.class);
}
我试图消除该错误,但无法找出问题所在。构造 T create(Class<T> clazz) 应该是有效的并且为我工作了很多次。所以转换不应该是问题,错误根本没有帮助。
【问题讨论】:
标签: java android-studio generics factory