UncheckedIOException和Stream API的习语/最佳实践是什么?



Java 8正式将java.io.UncheckedIOException引入JDK类库,因为lambda表达式不能声明它的throws -子句,并且lambda主体不能抛出IOException等检查异常。

UncheckedIOException和流API的习惯用法/最佳实践是什么?我在什么条件下显式抛出新的UncheckedIOException对象,什么时候我应该捕获UncheckedIOException异常?

您将在与当前执行此操作的库方法(BufferedReader.linesFiles.lines)相同的情况下抛出它:也就是说,当您包装由打开文件后的操作导致的I/O异常时(文件打开操作仍然抛出IOException)。至于捕获它,这取决于您的IO错误恢复策略:换句话说,尽您所能在非流代码中处理包装的IOException。

相关内容

最新更新