Java 10更新汇总,新的编译器通吃主流编程语言
早些时候Oracle发布了Java 10,这是Oracle更改发布策略之后的第一版Java,Oracle现已决定每六个月发布一个新的Java版本,周期缩短了,但是并不是说我们要学的更多了,而是说缩短开发周期后,有助于更快修复bug,并提前放出新功能,因为时间短所以新功能并不是很多。本次更新主要有:局部变量类型推断,G1并行完全垃圾回收,以及测试版的Java-Based JIT编译器。更新详情如下:
局部变量类型推断:在Java 8 lambda表达式的类型推断基础上,Java 10现已可以对本地变量类型进行推断。
G1并行完全垃圾回收:提升了对G1进行完全垃圾回收时的最坏情况的延迟水平。
应用类数据共享:通过扩展现有的类数据共享(Class-Data Sharing, CDS)功能,使其允许class存放在共享归档中,以此来优化启动速度和减少开销。
测试版的Java-Based JIT编译器:在Linux 64位环境下启用了Java-Based JIT编译器Graal。Graal是一个通用虚拟机,可以运行用JavaScript,Python, Ruby, R以及JVM语言Java, Scala, Cloujure, Kotlin编程语言编写的应用程序,还可运行基于LLVM的编程语言所写的程序,例如C和C++,而且能提供更快的速度。
垃圾回收接口:为了使不同垃圾回收器的源代码更好的分离,引入了新的简洁的垃圾回收器接口。它可以使HotSpot内部垃圾回收代码更加模块化,新增垃圾回收器实现时不影响已有的垃圾回收器代码,能够排队某个垃圾回收器的实现。
本地线程握手:执行线程回调函数时不再对全局VM还原点进行还原,让关闭单个线程变得可能且减少开销。
新增Unicode语言标签扩展:增强了java.util.Locale和其相关的API来实现BCP 47 Unicode扩展。
允许在其他内存设备上进行堆分配:例如可以使用NV-DIMM内存设备。
根证书:提供了一组默认的根证书授权中心(CA)。
基于时间的发布版本:修定了Java SE平台和JDK的版本字符串模式。
合并JDK森林到单一仓库:把分散的JDK仓库统一到了一个仓库中,简化了JDK的开发流程。
最新文章
- Python Django Apache配置
- Fiddler调式使用知多少(一)深入研究
- 在博客中使用LaTeX插入数学公式
- DIOCP之DEMO-登陆验证设计(二)
- webstrom 中启用emmet插件的方法
- MVC5 烂笔头
- mysql中的null字段值的处理及大小写问题
- golang的";...";备忘
- python基础知识七
- 201521123090 《Java程序设计》第5周学习总结
- hdu1222&;hdu1014 循环群的生成元
- C语法简单测试
- Redux的工作流程
- 【Visual Studio 扩展工具】使用ComponentOne中的GroupDefinition和SortDefinition属性保存和还原布局
- JMD Handy Baby 2 to Decode &; Adding New BMW 525 ID46 Key
- JS通过键盘点击事件实现div移动
- Delphi读取不Word中不规则表格数据并转换成标准表格
- VI/VIM 无法使用系统剪贴板(clipboard)?(Ubuntu&;Mac OS X已解决)
- System.Runtime.InteropServices.COMException: 检索 COM 类工厂中 CLSID 为 {0002E510-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80040154
- 解决org.apache.shiro.session.UnknownSessionException: There is no session with id的问题
热门文章
- vue中使用触摸事件,上滑,下滑,等
- C语言学习笔记一---C语言概述
- 《Head First 设计模式》:抽象工厂模式
- Android:沉浸式状态栏(二)集成
- __getattribute__小例子
- list 和 [ ] 的功能不相同
- Python File fileno() 方法
- 一本通 高手训练 1781 死亡之树 状态压缩dp
- 区块链钱包开发 - USDT - 三、实战(nodejs版本)
- Pandas 数据处理 | Datetime 在 Pandas 中的一些用法!