我正在使用JUnit 4.12。 assert方法本质上不是通用的。例如,assertEquals方法看起来像:为什么JUnit声明方法不是Java中的通用方法?
static public void assertEquals(Object expected, Object actual) {..}
为什么不是这样?
static public <T> void assertEquals(T expected, T actual) {..}
我觉得需要更好的编译时检查和IDE自动完成的泛型方法声明。
Downvoters,请提供原因。 –
泛型给你带来了什么?请参阅[我对这个问题的回答](http://stackoverflow.com/a/38475261/3788176),它解释了为什么它是多余的。 –
@AndyTurner这样我就不会无意中比较两种不同类型的对象,而这些对象无论如何都是无效的。 IDE将提供更好的建议,以便可以在方法中传递哪些参数,而不是显示范围中所有现有对象的列表。 –