- 要使用好泛型,首先要掌握好,继承,多态。
- 形参:尽可能是接口类型,父级类型,这样,在调用泛型方法时候,很多子类都可以方便调用
- 泛型,要尽可能的靠近实际类型,比如下面的这段代码,就不太好, 正确的应该是用 Class destinationClass, 这样destinationClass 更接近真实的实际类型
错误
正确
public <S, D> List<ExcelData> getExportExcelData(Iterable<S> source, Class<D> destinationClass) {
List<D> excelExportEntities = mapperFacade.mapAsList(source, destinationClass);
List<ExcelData> result = excelExportEntities.stream().map(x -> (ExcelData) x).collect(Collectors.toList());
return result;
}