【发布时间】:2011-04-23 03:03:18
【问题描述】:
我有课
class ClassA<B extends ClassC>
{
................
}
在另一个类中,我有一个 A 类型的对象列表。
List<A<?>> cl = new ArrayList<A<?>>();
cl.add(new ClassB1(....));
其中 ClassB1 扩展 ClassC。如何找出列表中对象的类型?即列表中的第一个对象是 ClassB1 类型。
添加实际代码
ClassA<ClassB1> af = new ClassA<ClassB1>();
List<ClassA<?>> afl = new ArrayList<ClassA<?>>();
afl.add(af);
for(ClassA<?> a: afl)
System.out.println(a.getClass());
这仅打印 ClassA 而不是 ClassB1。
【问题讨论】: