类类型列表不明确

时间:2015-02-05 12:54:28

标签: java list generics

这样的事情可能吗?我无法让它发挥作用:

class B extends A {
...
}

class A {
...
}

List<Class<? extends A>> list(){
 return Arrays.asList(B.class);
}

我得到Type mismatch: cannot convert from List<Class<B>> to List<Class<? extends A>>.

1 个答案:

答案 0 :(得分:3)

正如评论中所提到的,它可以很好地编译Java 8(增强的目标类型)。在旧版本中,您必须执行此操作:

List<Class<? extends A>> list() {
    return Arrays.<Class<? extends A>>asList(B.class);
}

进一步阅读: