加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

Oracle正式发布Java 8及JDK 8(附下载)

发布时间:2017-08-09 06:09:22 所属栏目:教程 来源:王晓东
导读:在今天举行的EclipseCon大会上,Oracle正式发布了Java开发者期待已久的JDK 8,对于Java来说,这又是一个里程碑式的时刻。此次升级,最大的变化就是加入了Lambda表达式以及函数式接口。

  【 专稿】在今天举行的EclipseCon大会上,Oracle正式发布了Java开发者期待已久的JDK 8,对于Java来说,这又是一个里程碑式的时刻。此次升级,最大的变化就是加入了Lambda表达式以及函数式接口。

  现在,Java开发者可以根据自己的开发环境,在Oracle官方网站上下载相应的JDK 8版本,其中包括适用于Linux和Windows 32/64位、Mac OSX、Solaris 64位以及专门针对Linux ARM的版本。随着JDK 8的发布,主要的Java开发工具供应商也都相继宣布将会进行升级并支持,包括Eclipse、IntelliJ以及NetBeans等。

Oracle正式发布Java 8及JDK 8(附下载)
▲Java 8终于来了,等你等到花儿的谢了!

  JDK 8主要特性一览(来源于网络)

  函数式接口。函数式接口是只定义了一个抽象方法的接口。Java 8引入了FunctionalInterface注解来表明一个接口打算成为一个函数式接口。例如,java.lang.Runnable就是一个函数式接口。

  Lambda。函数式接口的重要属性是:我们能够使用lambda实例化它们,Lambda表达式让你能够将函数作为方法参数,或者将代码作为数据对待。

  方法引用。方法引用是简洁的Lambda表达式,能够用于已经拥有名称的方法。下面是一些方法引用的例子,右边是同样效果的Lambda表达式。

  java.util.stream。新的 java.util.stream包提供了对值流进行函数式操作的类。

  改进了泛型推断。这提升了Java编译器推断泛型和在泛型方法调用中减少显式类型参数的能力。

  java.time。新的日期/时间API包含在 java.time包中。所有的类都是不可变且线程安全的。日期和时间类型包括Instant、LocalDate、LocalTime、LocalDateTime和ZonedDateTime。除了日期和时间之外,还有Duration和Period类型。另外,值类型包括Month、DayOfWeek、Year、 Month、YearMonth、MonthDay、OffsetTime和OffsetDateTime。这些新的日期/时间类大部分JDBC都支持。

  当然,以上只是一小部分新特性,关于Java 8的相关信息,请点此查看。

  Jigsaw项目被推迟到Java SE 9

  “对于Java开发者来说,Java 8意味着一次重大的转变。”JFrog公司CTO Yoav Landman表示,“JDK 8加入了Lambda表达式以及方法引用,这会让程序变得更加简单。”

  IDC分析师Al Hilwa也表示,加入Lambda是Java的一次重要变化,这对于并行编程来说将非常有益。“虽然给编程语言带来了很大的影响,但Lambda仅仅是增加并行化编程能力的一部分。”

  JDK 8原定于去年9月发布,但由于安全问题,Oracle推迟到了今年3月份。此外,原本计划加入的Project Jigsaw,也推迟到了Java SE 9上,这让很多Java开发者失望不已。

  此外, 国外媒体也针对JDK 8进行了一项调查,主要面向Java中间件厂商。调查结果显示,有29%的公司计划六个月内升级到最新版本;有25%公司会在十二个月内完成升级;有32%的公司还未对新版本进行评估;同时,也有22%的企业还在使用在2006年发布的Java SE 6。

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!