Java JDK 10会有什么期望

由于我们刚刚习惯于9月发布的Java 9,因此距离下一代Java的发布只有几个月的时间了。 就在本月,计划中的Java Development Kit 10升级已进入开发的主要减速阶段。 在第一个初始阶段,可以修复一个到三个错误。

JDK 10是Java Standard Edition 10的实现,将于2018年3月20日发布(正式版)。主要改进包括本地类型引用和用于垃圾回收的干净接口。

Oracle为Java版本设置了六个月的发布周期。 在每个版本的年度和月份之后,已经有计划命名此升级及其后续版本。 第一个发行版名为Java 18.3。 在提出反对意见后,这些计划被取消。

您同意加入早期采用者计划后,可以从其网站下载Beta版本 。

Java JDK 10中的关键新功能是:

  • 通过将类型推断扩展到局部变量来增强语言的局部变量类型推断。 目的是减少与编码相关的“仪式”,同时保持对静态类型安全性的承诺。
  • 干净的垃圾收集器接口,用于改善不同垃圾收集器的源代码隔离。 这项工作的目标包括为HotSpot虚拟机中的内部垃圾收集代码提供更好的模块化,并使向HotSpot添加新的垃圾收集器变得更加容易。
  • G1垃圾收集器的并行完整垃圾收集。 目的是通过实现并行性来改善最坏情况的延迟。
  • 使HotSpot能够在用户指定的备用存储设备(例如NVDIMM内存模块)上分配对象堆。 此功能可以预见,未来的系统可能具有异构的内存体系结构。
  • 使基于Grall的Java即时编译器可以在Linux / x64平台上以实验方式使用。
  • 将JDK林的存储库合并为一个存储库以简化开发。 到目前为止,代码库已分为多个存储库,这可能会导致源代码管理出现问题。
  • 应用程序类数据共享通过跨进程共享通用类元数据来减少占用空间。 启动时间也缩短了。
  • 线程本地握手,用于在线程上执行回调而无需执行全局VM安全点。 可以停止单个线程,而不是停止所有线程或不停止线程。
  • 在JDK中提供一组默认的根证书颁发机构证书。 目标是在Oracle Java SE Root CA程序中开源根证书,以使OpenJDK构建对开发人员更具吸引力。

Oracle的Java SE下载页面尚未提供对JDK 10的访问权限,因为在最终版本发布之前,JDK 10的开发还有其他阶段。

从9月21日期待已久的Java开发工具包(JDK)9版本开始 ,Oracle正在计划为Java计划升级,包括计划于2018年3月发布的Java 18.3版本。

翻译自: https://www.javacodegeeks.com/2017/12/expect-java-jdk-10.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/348699.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jpa配置映射包_JPA – Hibernate –包级别的类型映射

jpa配置映射包当我们最终成熟到可以在JPA中使用某些自定义类型映射时,我们通常会停留在某些提供程序特定的解决方案上,因为JPA本身并未定义任何用于执行此操作的机制。 让我为您展示一个JPA提供程序Hibernate的自定义类型映射定义的示例。 假设我们在项目…

弹簧和线程:异步

以前,我们开始使用spring和TaskExecutor ,因此我们对如何在spring应用程序中使用线程更加熟悉。 但是,使用任务执行程序可能比较麻烦,尤其是当我们需要执行简单的操作时。 Spring的异步方法可以解决。 您不必为可运行对象和Tas…

C++一天一个程序(一)

例1: helloworld! #include int main() { std::cout << “Hello, world!n”; } 或者 #include using namespaces std; int main() { cout << “Hello, world!n”; } 换行还可以endl

我的对象命名

这是最常见的辩论之一。 大多数人对此主题有自己的见解&#xff0c;却没人能真正说出哪个是正确的。 我当然不能&#xff0c;但是尽管如此&#xff0c;我还是决定与大家分享我的想法&#xff0c;投入两美分&#xff0c;也许对某人会有帮助。 当我创建一个新类时&#xff0c;我…

C++一天一个程序(二)

#include #define NUMBER 4 int main() { std::cout << NUMBER << std::endl; } 或者 #include using namespaces std; int main() { cout << 4<< endl; } 注意: 第一段中NUMBER已经被定义&#xff0c;不可以在程序中再次赋值。建议不要用#define定义…

c++编写web服务_让我们编写一个文档样式的Web服务

c编写web服务您可能知道&#xff0c;我们可以使用四种主要的Web服务样式。 它们如下&#xff1a; 文件/文学 包装的文件/文学 RPC /编码 RPC /文字 当然&#xff0c;现在不建议使用RPC /编码样式。 如果您有兴趣&#xff0c;可以在此处找到这篇非常全面的文章&#xff0c;…

C++一天一个程序(三)

#include <stdio.h> class Trace { public:     Trace()  {noisy 0; }      void print(char* s)  { if (noisy)  printf("%s",s); }   void on()  { noisy 1; }      void off()   { noisy 0; }  private: int noisy;   };  C改…

Java 9:ServiceLoader

java.util.ServiceLoader类在运行时加载服务提供者/实现。 在编译时&#xff0c;ServiceLoader只需要知道Service接口。 借助Java9模块化&#xff0c;我们可以在运行时动态添加服务实现模块&#xff0c;而Application可以拥有新的实现&#xff0c;而不会影响任何事情&#xff0…

C++一天一个程序(四)

#include using namespace std; struct complex{  double real, imag;  complex(double 0.0, double 0.0); } complex&#xff1a;complex(double r, double i) {  real r; imag i; } inline ostream& operator<<(ostream &os, const complex &c) {…

C++一天一个程序(五)

(1)确定所求长方形的长和宽。 (2)确定计算长方形的周长和面积的公式并计算。 (3)输出计算结果。 (1)以面向过程程序设计思想编码。 #include using namespace std; void main(){ int perimeter,area; int length20,width10; perimeter2*(lengthwidth); arealength* width; cou…

netbeans 定制代码_将NetBeans代码模板弯曲到我的意愿

netbeans 定制代码任何阅读过我关于NetBeans的文章的人都知道&#xff0c;我真的很喜欢NetBeans的许多功能。 但是&#xff0c;最近&#xff0c;我发现自己对NetBeans特定功能的特定问题越来越恼火。 最终&#xff0c;它使我烦恼不已&#xff0c;促使我开始研究如何根据自己的喜…

一天一个C++程序(六)

数据类型转换应用示例。 #include using namespace std; int main() { int a,c,d,b322; float x,z,y4.56; char ch1‘d’,ch2; ay; xb; cch1; ch2b; zyb; dbch1; cout<<“a”<<a<<"\tx"<<x<<endl; cout<<“c”<<c<<…

早期更多失败– Java 8

快速失败或早期失败是一种软件工程概念&#xff0c;旨在通过在不应该发生的事情发生时立即停止执行来防止复杂问题的发生。 在之前的博客文章和演示中&#xff0c;我将详细介绍这种方法的优点&#xff0c;在此博客文章中&#xff0c;我将详细介绍Java 8中该思想的另一种用法。 …

C++一天一个程序(七)

#include using namespace std; int main() { cout<<“字符型 (char)所占字节数:”<<sizeof(char)<<endl; cout<<“无符号字符型(unsigned char)所占字节数:”<<sizeof( unsigned char)<<endl; cout<<“短整型( short int)所占字节数…

C++一天一个程序(八)

#include <iostream.h> void main() { int i,j,k; for(i1;i<6;i) { for(j1:j<6-i;j) cout<<" “; for(kl;k<: 2i- 1;k) cout<<"%"; cout<<endl; } for(i5;i>1;–) { for(j 1:j<6-i:j) cout<<" "; for(k…

url中传递对象参数_在URL参数中传递复杂对象

url中传递对象参数假设您想传递原始数据类型&#xff0c;例如复杂的Java对象 java.util.Data&#xff0c;java.lang.List&#xff0c;泛型类&#xff0c;数组以及通过URL参数所需的所有内容&#xff0c;以便在页面加载后在任何网页上预设默认值。 共同的任务&#xff1f; 是的…

C++两天一个程序(一)

#include  using namespace std;  main()   {    int  i 7;    int* ip &i;    int** ipp &ip;    cout << "Address " << ip << " contains " << *ip << endl;    cout << "A…

两个迭代器的故事

当您查看最受欢迎的Java面试问题时&#xff0c;可能会遇到有关快速故障和故障安全迭代器的问题&#xff1a; 故障快速迭代器和故障安全迭代器之间有什么区别&#xff1f; 简化的答案是&#xff1a; 如果在迭代过程中修改了集合&#xff0c;则快速失败迭代器将引发ConcurrentM…

数据库系统内部体系结构与外部体系结构

数据库系统的内部和外部体系结构 (1)内部体系结构模式&#xff1a;概念视图&#xff0c;概念级数据库&#xff0c;整个数据库的实际存储的抽象。一个数据库只有一个模式。 外模式&#xff1a;子模式&#xff0c;用户模式&#xff0c;最外层&#xff0c;是模式的子集&#xff0c…

三个世界及其有关概念

三个世界及其有关概念 数据库管理的对象(数据)存在于现实世界中&#xff0c;即现实世界中的事物及其各种联系。从现实世界的事物到存储到计算机的数据库中的数据,要数经历现实世界、信息世界和计机世界三个不同的世界,经历两级抽象和转换完成。 认识抽象&#xff0c;概念模型 1…