写点什么

甲骨文公司首次公布 Java 9 特性

  • 2014-08-24
  • 本文字数:1035 字

    阅读完需:约 3 分钟

甲骨文公司公布了第一批针对 Java9 的增强提议(也被称为 JEPs),这些提议中的内容将会作为 Java 9 需要实现的新特性。

Java 增强提议是一种新的流程,这种流程允许开发和探索出针对 Java 语言以及虚拟机的一些特性,而不需要经历一个完整的规范定义流程(JSR)。这也就意味着 Java 增强提议(JEPs)能够包含的特性范围可以更小,更具有针对性,还可以解决针对 OpenJDK 实现中的特定问题。成功的 Java 增强提议(JEPs)随后可以被转换为标准化的请求(或者打包到现有 Java 标准,作为标准化发布功能点的一部分)。

Java9 的初始特性集是相对比较小,而且相对保守的,但距离 Java9 的发布还有两年多的时间,因此在 GA 版本发布之前还会有很多附加的特性被添加进来。

宣布的 Java 增强提议(JEPs)中包含三个新的 API: 用来和操作系统中的非 Java 进程交互的进程API 的更新,包含HTTP/2 支持的新的HTTP 客户端以及轻量级的JSON API 。轻量级的JSON API 将会基于JSR 353 中包含的已经标准化的JSON 支持功能进行构建。

也还有三个和Java 虚拟机(JVM)/ 性能相关的特性被公布出来:当线程竞争获取对象锁时,为获得更好的性能而改善锁竞争 JIT 编译器的代码缓存分段(在大型应用上提供更好的 JIT 性能),以及进一步开发“智能”的Java 编译器,名称为sjavac,该编译器能够在多个其他特性的配合下实现并行和共享编译( http://openjdk.java.net/jeps/199 )。

最后,一个曾经承诺过的在 JEP201 中非常吸引人的特性 -模块化源代码。这个特性并不是,至少目前,项目名称为Jigsaw(最初定位为Java 8 的一部分)所提供的模块化解决方案中的内容。取而代之的是,这是一个为清理OpenJDK 的尝试,在构建JDK 本身的同时,通过创建和执行模块边界来奠定模块化的基础。虽然模块系统对于开发者和运行时是不可见的,但这是朝着完全模块化方向的第一步。

其他正在探索Java 演进的项目包括项目Valhalla ,和 Java 本地运行时(JNR)项目。Java 本地运行时项目由 Charles Nutter (JRuby) 创建,主要用来检修 Java 原来的本地接口(JNI)。目前,还不知道上述两个项目是否发布能够成为 Java 9 部分特性的技术,但是这两个项目所针对的目标都是 Java 开发者非常感兴趣的领域。

查看英文原文: Oracle Announces First Java 9 Features


感谢赵震一对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-08-24 08:133862

评论

发布
暂无评论
发现更多内容

LabVIEW采集鼠标、键盘数据

不脱发的程序猿

LabVIEW 获取鼠标、键盘输入数据

OpenHarmony开源开发者成长计划,寻找改变世界的开源新生力!

科技汇

网络协议之:sctp流控制传输协议

程序那些事

Java Netty 程序那些事 4月月更

什么是区块链数字藏品,它具有什么价值?

CECBC

DaaS大数据服务简析

穿过生命散发芬芳

4月月更

Robot OS添加开机启动服务

轻口味

android 4月月更 AOSP

正确的文档排版方式

源字节1号

C语言总结_函数知识

DS小龙哥

4月月更

Scrum Patterns之理解各种团队模式

Bruce Talk

Scrum 敏捷开发 Agile Scrum Patterns

瑞萨IDE:CS+ for CC新建工程配置方法

不脱发的程序猿

ide 汽车电子 CS+ for CC 瑞萨MCU

云原生训练营毕业总结

hcyycb

redis优化系列(三)解决主从配置后的常见问题

乌龟哥哥

4月月更

在线时序流程图制作工具

入门小站

工具

手撕《Google SRE Book》

一席

轻量化项目管理思路

秋去冬来春未远

需求管理 问题管理 问题和需求区别

LabVIEW显示控件中内容过长设置自动滚动条

不脱发的程序猿

LabVIEW 设置自动滚动条

自己动手写Docker系列 -- 6.3 手动配置容器网络(下)

Go Docker 4月月更

5种高大上的yml文件读取方式,你知道吗?

码农参上

springboot 配置文件 4月月更

一文搞懂SPI通信协议

不脱发的程序猿

spi 嵌入式 通信协议

Go 语言入门很简单:时间包

宇宙之一粟

时间 Go 语言 4月月更

修改,编译,GDB调试openjdk8源码(docker环境下)

程序员欣宸

Java JVM 4月月更

在线Excel转CSV工具

入门小站

工具

LabVIEW修改应用程序窗口外观

不脱发的程序猿

LabVIEW 修改应用程序窗口外观

瑞萨IDE:CS+ for CC下载、安装和基础使用

不脱发的程序猿

ide 瑞萨 汽车级MCU CS+ for CC

「面向信仰编程」Draven 专访:像写代码一样,用树形的结构写文章

Shopee技术团队

Go 语言 技术播客

LabVIEW设置应用程序显示标签透明

不脱发的程序猿

LabVIVE 美化应用程序

瑞萨IDE:CS+ for CC进行BootLoader升级时开发环境配置

不脱发的程序猿

嵌入式 汽车电子 MCU 瑞萨 CS+ for CC

如何发挥测试策略的指导性作用

KJ Meng

DevOps 研发管理 测试 自动化测试 测试策略

linux之pkill命令

入门小站

14岁懂社会-《给想要成为医生的你》读书笔记

懒时小窝

读书笔记 读书

搭建帮助中心,推动SaaS行业业务增长

小炮

SaaS 帮助中心

甲骨文公司首次公布Java 9特性_Java_Ben Evans_InfoQ精选文章