Java中的类列表

Java中的类列表,java,generics,Java,Generics,我有多个类(B、C和D),它们是类A的子类。我需要制作一个包含B、C和D的列表/数组,并基于从列表/数组中提取的任何元素创建对象 在AS3中,我会这样做:var类:Array=[MovieClip,Sprite,Shape];或类的向量 如何在Java中实现这一点? 我现在在想这样的事情: List<Class<? extends A>> list = new ArrayList<Class<? extends A>>(); list.add(B

我有多个类(B、C和D),它们是类A的子类。我需要制作一个包含B、C和D的列表/数组,并基于从列表/数组中提取的任何元素创建对象

在AS3中,我会这样做:var类:Array=[MovieClip,Sprite,Shape];或类的向量

如何在Java中实现这一点? 我现在在想这样的事情:

List<Class<? extends A>> list = new ArrayList<Class<? extends A>>();

list.add(B);

List
List您可以对这两种方法进行模拟。如图所示,有多种实现,或者您可以创建一个数组:

Class[] classes = new Class[] {
    MovieClip.class, Sprite.class, Shape.class
};

就像@Rob一样,但是使用
B.class
而不是
B
现在我明白了,我必须使用B.class,而不是B。我可以问一下我如何创建列表元素的对象吗?如果类有0参数(称为标准)构造函数,你可以调用
aClass.newInstance(),否则,您必须使用
getconstructor
方法之一。签出或使用
数组。
Class[] classes = new Class[] {
    MovieClip.class, Sprite.class, Shape.class
};