List可以存储接口类型的数据吗?

今天看到了一块代码List存放的数据是一个接口类型的!我知道List可以存放Object类型的不知道可以存放Interface类型的!希望大佬给我这个小白上一课这样可以吗?

代码如下:

List<DataProcessor> DataProcessor 是一个接口

代码中没有对这个list操作就在方法中直接遍历操作了

接口的代码在下面

       //这里List存放的数据类型是一个接口

private List<DataProcessor> processors ;

private Logger logger = Logger.getLogger(DataProcessHandler.class);

@Transactional

public ADIContext handle(ADIContext context){

try {

//这里直接操作这个List

for(DataProcessor processor : processors){

if(context.getStatus() == context.STATUS_SUCCESS){

processor.process(context);

}else{

break ;

}

}

} catch (Exception e) {

context.setStatus(ADIContext.STATUS_FAIL);

context.setMsg("数据存储处理失败..."+ExceptionHelper.getExceptionString(e));

logger.error("数据存储处理失败,taskId="+context.getTaskId(),e);

}

if(context.getStatus() == context.STATUS_FAIL){

throw new RuntimeException(context.getMsg());

}

return context;

}

接口的代码

public interface DataProcessor {

void process(ADIContext context);

}

回答

processors 这个可以被设置值的

以上是 List可以存储接口类型的数据吗? 的全部内容, 来源链接: www.h5w3.com/112909.html

回到顶部