阅读更多

1顶
0踩

编程语言

转载新闻 刚刚,Java 10 正式发布了

2018-03-21 10:01 by 副主编 jihong10102006 评论(4) 有13554人浏览

3 月 20 日,Oracle 宣布 Java 10 正式发布。官方已提供下载:http://www.oracle.com/technetwork/java/javase/downloads/index.html

 

在 Java 9 之后,Java 采用了基于时间发布的策略,每 6 个月一个版本。这是采用新的发布策略之后的第一个版本。

 

Java 10 主要有 12 个新特性。

具体来看看。

 

JEP 286: Local-Variable Type Inference

 

局部变量的类型推导。

很多人都会吐槽 Java 代码写起来太过繁琐,特别是涉及泛型的时候。就像 C++,也基于 auto 关键字引入了类型推导功能。

Java 也计划引入类似特性,语法是这样的:

var list = new ArrayList<String>();  // infers ArrayList<String>var stream = list.stream();          // infers Stream<String>

 

该特性只能用于三种场景:

  • 带有初始化信息的局部变量

  • 增强 for 循环中的索引

  • 传统 for 循环中的局部变量

看个复杂点的例子:

对该特性感兴趣的读者可以参考:https://developer.oracle.com/java/jdk-10-local-variable-type-inference
JEP 296: Consolidate the JDK Forest into a Single Repository

 

将 JDK 的多个代码仓库合并到一个代码仓库中。

看过 JDK 代码的应该知道,JDK 的不同功能分布在不同代码仓库中。以 JDK 9 为例,代码仓库有 8 个: root, corba, hotspot,jaxp, jaxws, jdk, langtools 和 nashorn。其中 hotspot 是虚拟机实现代码,jdk 是 Java 类库和相关工具,langtools 是 javac 等工具,nashorn 是 JavaScript 引擎。

JEP 304: Garbage Collector Interface

 

垃圾收集器接口。

在 hotspot/gc 代码实现方面,引入一个干净的垃圾收集器接口,改进不同垃圾收集器源代码的隔离性。这样添加新的或者删除旧的 GC,都会更容易。

 

 

JEP 307: Parallel Full GC for G1

 

为 G1 垃圾收集器引入并行 Full GC。

JEP 310: Application Class-Data Sharing

 

Java 之前就引入了类数据共享机制,Class data sharing (CDS) ,以减少 Java 程序的启动时间,降低内存占用。简单来说,Java 安装程序会把 rt.jar 中的核心类提前转化成内部表示,转储到一个共享的文件中(shared archive)。多个 Java 进程(或者说 JVM 实例)可以共享这部分数据。

现在,希望更近一步,支持应用类的数据共享。

 

JEP 312: Thread-Local Handshakes

 

修改安全点机制,使得部分回调操作只需要停掉单个线程,而不像以前那样,只能选择或者停掉所有线程,或者都不停止。

 

JEP 313: Remove the Native-Header Generation Tool (javah)

 

去掉 javah 工具。

从  JDK 8 开始,javah 的功能已经集成到了 javac 中。所以,javah 可以删掉了。

 

JEP 314: Additional Unicode Language-Tag Extensions

 

额外的 Unicode 语言标签扩展。

增强 java.util.Locale  和相关 API,实现 BCP 47 语言标签中额外的 Unicode 扩展。

 

JEP 316: Heap Allocation on Alternative Memory Devices

 

在可选内存设备上分配堆内存。

支持将 Java 对象堆分配到 NV-DIMM 等内存设备上。随着 NV-DIMM 越来越便宜,未来的系统可能会搭载异构内存架构。

 

JEP 317: Experimental Java-Based JIT Compiler

 

实验性的基于 Java 的 JIT 编译器。

支持基于 Java 的 JIT 编译器。相关工作主要基于 Graal。Graal 也是 Java 9 中引入的 AOT 编译器的基础。

 

JEP 319: Root Certificates

 

根证书。

在 JDK 中提供一组默认的根证书。

 

JEP 322: Time-Based Release Versioning

 

基于时间的版本字符串。修改 Java SE 平台和 JDK 版本字符串机制。考虑和之前版本号的兼容等问题,新的版本命名机制是:

$FEATURE.$INTERIM.$UPDATE.$PATCH
$FEATURE,每次版本发布加 1,不考虑具体的版本内容。(之前的主版本号部分)2018 年 3 月的版本是 JDK 10,9 月的版本是 JDK 11,依此类推。
$INTERIM,中间版本号,在大版本中间发布的,包含问题修复和增强的版本,不会引入非兼容性修改。
马上下载尝试吧!

  • 大小: 125.2 KB
  • 大小: 133.1 KB
来自: 开发资讯
1
0
评论 共 4 条 请登录后发表评论
4 楼 SuiFeng枫 2018-03-23 19:44
然而我还在用jdk1.6
3 楼 风一样的男人__ 2018-03-23 15:26
 
2 楼 masuweng 2018-03-22 13:25
8,9,都没有用过,出来10了,    
1 楼 cremains 2018-03-21 10:59
  这也太快了吧。

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • ActiveXTest代码

    ActiveXActiveXTest代码ActiveXTest代码ActiveXTest代码

  • ActiveX发布步骤

           元旦刚过,老板就吩咐起草一份项目可行性报告,昨天刚完,掰手指头一算,整整没日没夜写了4天!老板又让偶写一个网页控件给客户。是在内部网发布,发布过程还是频费一翻周折,呵,好记性不如烂笔头,记下来:      以下ActiveX发布所需工具下载:http://d.download.csdn.net/down/326629/memory_xj       开发一个示功图显示程序,控件为

  • 开源发布一个Web在线截图ActiveX控件,通过AJAX可以自动上传到服务上

    开源发布一个Web在线截图ActiveX控件,通过AJAX可以自动上传到服务上

  • ActiveX打包与发布

    一、ActiveX发布步骤1、单击"开始""运行(R)"输入"cmd"回车进入到操作的控件所在的目录;2、创建PVK文件(私人密匙文件),在命令行中输入"makecert -sk demo demo.pvk -n CN=XXXXXXX公司",然后回车;3、创建CER文件(公司证书),在命令行中输入"makecert -sk demo.pvk demo

  • 发布Activex

    1、如果需要创建cab文件,首先需要Cabarc或者Makecab,它们随着Cabinet  SDK的安装就有了,Cabinet  SDK的下载地址是http://msdn.microsoft.com/workshop/management/cab/cabdl.asp。  Cabarc可以创建、查看或者解出cab里面的文件,而Makecab则只可以用来创建cab文件。  2、制作cab文件时需要将

  • vs2010开发activex(MFC)控件/ie插件(一)

    vs2010制作基于mfc的ie插件

  • 用ActiveXObject可实现从客户端本地上传文件到服务器端的功能

    1、javascript代码如下,filePath为服务器路径: function sendFileToServer(filePath){     var stream =newActiveXObject("ADODB.Stream");     stream.Type=1;      stream.Open();      stream.Position = 0;     s

  • Activex test contact failed to create control 未指定的错误 控件无法加载的原因

    本文指的是vc++项目的activex  出现这个问题, 我总结了总共有以下几点,可能还有其他原因:1.中文问题:如果你的项目类型是多字节的,而不是unicode编码的,你可能要注意这个问题了,我就发生了这个问题,为了解决这个问题没办法项目重新生成然后一个一个去排除,结果发现在 "copyright 公司名称(C)"的地方多了一个公司名称,是我自己手动加上去的,结果就是这个说明给搞的不能运

  • 如何发布ActiveX 控件

    [背景]       做过ActiveX控件的朋友都知道,要想把自己做的ActiveX控件功能放在自己的网页上使用,那么用户在客户端就必须进行本地的注册,也就是说用户得首先要把该ActiveX控件(test.ocx)放在本机的%system%/system32下,然后运行DOS工具里面运行regsvr32 test.ocx命令进行注册。但如果真是这么去做的话,那么代表着你处于危险之中了,因为您

  • Activex打包于发布完整版---ActiveX打包

    前面介绍了数字证书的原理与制作:http://blog.csdn.net/jiangtongcn/article/details/13508365,下面来看一下ActiveX组件的打包。 我现在有一个ActiveX组件:fq.ocx,目的用于采集当前登录的QQ号码,采用vc mfc编写,当然您完全可以用其它技术编写。本ActiveX需要嵌入在网页中运行。 网上的关于打包这方面的东西太多了。这里

  • 复制不能复制的网页文字

    1,网页中嵌入了javascript语言,通过编程手段屏蔽了复制。   只要点击IE的“工具”→“Internet选项”菜单,进入“安全”标签页,选择“自定义级别”,将所有脚本全部禁用,然后按F5键刷新网页,这时你就会发现那些无法选取的文字可以选取了   在采集到了自己需要的内容后,一定要给脚本“解禁”,否则会影响到我们浏览网页。   2,有些网站为了防止别人使用他的内容把它禁掉了,除了上述同志们

  • 2024-2030全球及中国PCB接触式探头行业研究及十五五规划分析报告.docx

    2024-2030全球及中国PCB接触式探头行业研究及十五五规划分析报告

  • 网站界面设计mortal0418代码

    网站界面设计mortal0418代码

  • PHP毕业设计-校园失物招领系统源码+数据库.zip

    PHP毕业设计-校园失物招领系统源码+数据库.zip个人经导师指导并认可通过的高分毕业设计项目,主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的学习者。也可作为课程设计、期末大作业。包含全部项目源码、该项目可以直接作为毕设使用。项目都经过严格调试,确保可以运行! PHP毕业设计-校园失物招领系统源码+数据库.zip个人经导师指导并认可通过的高分毕业设计项目,主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的学习者。也可作为课程设计、期末大作业。包含全部项目源码、该项目可以直接作为毕设使用。项目都经过严格调试,确保可以运行! PHP毕业设计-校园失物招领系统源码+数据库.zip个人经导师指导并认可通过的高分毕业设计项目,主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的学习者。也可作为课程设计、期末大作业。包含全部项目源码、该项目可以直接作为毕设使用。项目都经过严格调试,确保可以运行! PHP毕业设计-校园失物招领系统源码+数据库.zip个人经导师指导并认可通过的高分毕业设计项目,主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的学习者。也可

  • 2024年神经酸行业分析报告.pptx

    2024年神经酸行业分析报告.pptx

Global site tag (gtag.js) - Google Analytics