Java8 Lambda 表达式与 Checked Exception

来源:互联网 发布:淘宝的超级店长在哪里 编辑:程序博客网 时间:2024/06/06 07:35

当我们在使用 Java 8 的 Lambda 表达式时,表达式内容需要抛出异常,也许还会想当然的让当前方法再往外抛来解决编译问题,如下面的代码

main() 方法抛出 Exception 还是不解决决编译错误,仍然提示 "Unhandled exception: java.io.FileNotFoundException"。

因为我们可能保持着惯性思维,忽略了 Lambda 本身就是一个功能性接口方法的实现,所以把上面的代码还原为匿名类的方式

public void foo() {    Stream.of("a", "b").forEach(new Consumer<String>() {        @Override        public void accept(String s) {            new FileInputStream(s).close();        }});

那么对于上面那种情况应该如何处理呢? 阅读全文 >>

0 0
原创粉丝点击