我有一个接口A和扩展A的类B,C。
我想将B和C的类类型存储在一个ArrayList中。 为此,我创建了一个列表并添加如下所示的元素;
private List<Class<A>> classes = new ArrayList<>();
classes.add(B.class);
classes.add(C.class);
它不接受添加这些类型。 有什么办法吗?
答案 0 :(得分:2)
正如本杰明所说,以下内容有效并可以编译。如果对您不起作用,那么您必须忽略一些重要的事情:
public class Main {
interface A {}
class B implements A {}
class C implements A {}
private List<Class<? extends A>> classes = new ArrayList<>();
{
classes.add(B.class);
classes.add(C.class);
}
}