我有一个要求,我有一个通用接口将一个实体转换为另一个实体
public interface Converter<T,U>{
public U convert(T src) throws Exception;
}
实现类为
class StringToIntConverterImpl implements Converter<String,Integer>{
public Integer convert(Integer i) throws StringConversionException;
}
现在在我的代码中,我使用
public class AppClass{
private Converter<String,Integer> converter;
public static void mainAppLogic(){
try{
converter.convert(input);
}
catch(Exception e){
}
}
}
在这里,我必须捕获通用Exception,如何避免这种情况?同时,我想在我的mainapp中使用Converter转换器decalartion而不是特定的ConverterClass,因为我想编程以进行接口连接,以便以后可以转换Converter的任何实现。
答案 0 :(得分:0)
您可以使用通用异常:
public interface Converter<T, U, E extends Throwable> {
U convert(T t) throws E;
}
现在,在您的主要方法中,您可以:
public class AppClass{
private Converter<String,Integer,RuntimeException> converter;
public static void mainAppLogic(){
converter.convert(input);
}
}