关于Java泛型的一个小Tips
使用ArgumentCaptor
捕捉mock方法中的参数 如下所示
ArgumentCaptor<List<Foo>> fooCaptor = ArgumentCaptor.forClass(List.class);
报错
Error:(89, 86) java: incompatible types: org.mockito.ArgumentCaptor<java.util.List> cannot be converted to org.mockito.ArgumentCaptor<java.util.List<com.myapp.model.Foo>>
解决
使用了更高版本的Mockito
--mockito-core-2.0.36-beta
代码对比
mockito-core-1.0.19
public static <T> ArgumentCaptor<T> forClass(Class<T> clazz) {
return new ArgumentCaptor<T>(clazz);
}
mockito-core-2.0.36-beta
public static <U,S extends U> ArgumentCaptor<U> forClass(Class<S> clazz) {
return new ArgumentCaptor<U>(clazz);
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。