本文首发于jOOQ博客的Java8Friday系列,经原作者授权由InfoQ中文站编译并分享。
Java8发布已经有一段时间,它被认为是Java5发布以来最大的一次版本升级。Java8提供的新特性主要集中在Java编译器、类库、开发工具以及JVM(Java虚拟机)等方面。其中,Lambda表达式、默认方法、并行API等都受到了开发者的追捧,社区上关于Java8的学习资料如雨后春笋般出现。下面是一些优秀的学习资料汇总:
1.BrianGoetz在StackOverflow上的回答
Brian是《Java并发编程实战》的作者之一,有20多年的软件咨询行业经验。Brian是JSR的带头者,他和他的专家团队的努力为Java8的成功做出了重大贡献。下面是Brian在StackOverflow上关于Java8相关问题的一些精彩回答:
为什么在Java8中“synchronized”关键字不能用于接口方法?
为什么“final”关键字不允许在接口方法中使用?
《Java并发编程实战》仍然适用吗?
如何正确确定一个对象是lambda?
为什么Iterable不提供stream()和parallelStream()方法?
在Java8的并行流方法中使用semaphore可能会导致死锁,这是一个Bug吗?
为什么不允许把从java.lang.Object中继承的方法定义为默认方法?
如何比较闭包(Lambda表达式)?
Java8串行流与并行流的性能对比
如何使用Java8JDK将Iterable转换为Stream?
2.Baeldung的Java8资料集锦
Baeldung是一名软件开发工程师,热衷于Spring、REST、TDD等技术。他在自己的博客上总结了一些Java8资料。地址如下: