【发布时间】:2008-11-17 21:45:47
【问题描述】:
我仍在尝试使用 Java 的泛型。使用类型化集合我完全没有问题,但其余的大部分似乎都让我无法理解。
现在我正在尝试使用 JUnit“PrivateAccessor”,它需要一个 Class[] 参数,其中包含被调用的私有方法的所有参数类型的列表。在 Java 1.4 中,我将其定义为
Class[] args = new Class[] { Collection.class, ArrayList.class };
但实际代码现在被定义为接受参数
myMethod(Collection<MyClass1> first, ArrayList<MyClass2> second)
我试图将 args 的定义更改为
Class<? extends Object>[] args = new Class<? extends Object>[]
{ Collection<MyClass1>.class, ArrayList<MyClass2>.class };
但是 Eclipse 在结束的 >s 上放置了一个红色标记,并表示此时它正在等待“void”。我可以使用泛型来做到这一点,还是不应该打扰?
【问题讨论】: