【发布时间】:2014-05-01 04:13:57
【问题描述】:
Java 8 正式将java.io.UncheckedIOException 引入 JDK 类库,用于带有 Stream API 的 lambda,因为 lambda 表达式无法声明其 throws-clause 并且 lambda 主体无法抛出 IOException 等已检查异常。
UncheckedIOException 和 Stream API 的习惯用法/最佳实践是什么?我在什么条件下显式抛出新的UncheckedIOException 对象,何时应该捕获UncheckedIOException 异常?
【问题讨论】:
-
次要点 - lambdas 当然可以抛出
IOExceptions,但前提是它们所代表的接口方法也这样做。 -
@aepurniet 谢谢你的观点,我隐含地假定没有 throws 子句的功能接口,例如
java.util.function.Consumer<T>forStream#forEach()...