jdk8,jdk10,jdk12新特性
jdk8:
1.Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可,这个特征又叫做扩展方法
2. Lambda 表达式:(例如: (x, y) -> { return x + y; } ;λ表达式有三部分组成:参数列表,箭头(->),以及一个表达式或语句块。)
3. hashmap和currenthashmap的红黑树以及cas
jdk10:
1.局部变量类型推断:var
2. 线程本地握手
JDK 10将引入一种在线程上执行回调的新方法,因此这将会很方便能停止单个线程而不是停止全部线程或者一个都不停。
3. 备用内存设备上的堆分配
允许HotSpot VM在备用内存设备上分配Java对象堆内存,该内存设备将由用户指定。
5. 其他Unicode语言 - 标记扩展
目标是增强java.util.Locale及其相关的API,以便实现语言标记语法的其他Unicode扩展(BCP 47)。
6. 基于Java的实验性JIT编译器
Oracle希望将其Java JIT编译器Graal用作Linux / x64平台上的实验性JIT编译器。
7. 根证书
这个的目标是在Oracle的Java SE中开源根证书。
8. 根证书颁发认证
这将使OpenJDK对开发人员更具吸引力,它还旨在减少OpenJDK和Oracle JDK构建之间的差异。
9. 将JDK生态整合单个存储库
此JEP的主要目标是执行一些内存管理,并将JDK生态的众多存储库组合到一个存储库中。
10. 删除工具javah
从JDK中移除了javah工具,这个很简单并且很重要。
jdk12:
1.新增了一个名为 Shenandoah 的 GC 算法,通过与正在运行的 Java 线程同时进行 evacuation 工作来减少 GC 暂停时间。
2.扩展了 switch 语句,使其不仅可以作为语句,还可以作为表达式
3.针对 64 位平台,使用默认类列表增强 JDK 构建过程以生成类数据共享档。
4.如果 G1 Mixed GC 存在超出暂停目标的可能性,则使其可中止。
5.增强 G1 GC,在空闲时自动将 Java 堆内存返回给操作系统。
jdk8,jdk10,jdk12新特性相关推荐
- JDK10、JDK11、JDK12新特性
JDK10新特性 1.var声明变量 很多人抱怨Java是一种强类型,需要引入大量的样板代码.甚至在这些情况下,给定好变量名,通常很清楚发生了什么,明显类型声明往往被认为是不必要的.许多流行的编程语言 ...
- JDK10的新特性:var泛型和多个接口实现
文章目录 简介 实现多个接口 使用多个接口 使用var 总结 简介 在JDK10的新特性:本地变量类型var中我们讲到了为什么使用var和怎么使用var. 今天我们来深入的考虑一下var和泛型,多个接 ...
- JDK8升至JDK11 新特性整理
目录 方法新增/修改 String CharSequence Character Path Files Reader Writer InputStream OutputStream Predicate ...
- JDK8中的新特性——函数式接口
JDK8 简介 概述 Java 8由Oracle从2014年3月18日发布,此版本是自Java 5(发布于2004年)之后的一个重量级版本,也是java发展史上的一个里程碑式的版本.这个版本在JVM. ...
- JDK8 十大新特性详解
本教程将Java8的新特新逐一列出,并将使用简单的代码示例来指导你如何使用默认接口方法,lambda表达式,方法引用以及多重Annotation,之后你将会学到最新的API上的改进,比如流,函数式接口 ...
- JDK8 十大新特性详解(发现面试官挺喜欢问的)
本教程将Java8的新特新逐一列出,并将使用简单的代码示例来指导你如何使用默认接口方法,lambda表达式,方法引用以及多重Annotation,之后你将会学到最新的API上的改进,比如流,函数式接口 ...
- JDK10的新特性:本地变量类型var
文章目录 简介 为什么我们需要var var使用在什么地方 var不能用在什么地方 其他var的特点 总结 简介 java以面向对象的特性显著于世并得到了蓬勃的发展.在语言的发展过程中,为了让java ...
- JDK8之Stream新特性
/***JDK8 Stream特性* Created by chengbx on 2018/5/27.* Java 8 中的 Stream 是对集合(Collection)对象功能的增强,它专注于对集 ...
- JDK10的新特性:var和匿名类
文章目录 简介 匿名类中自定义变量 lambda表达式中的匿名类 总结 简介 匿名类相信大家都用过了,学过JDK8中的lambda表达式之后,可以发现有些匿名类是可以用lambda表达式来替代的,能够 ...
- JDK8与JDK9新特性学习
一.环境和软件准备 环境:window或者linux环境 下载软件: 1.JDK版本:JDK9下载路径 2.安装eclipse,当然可以使用其他编辑器 二.Lambda表达式预演 1.面向对象的Run ...
最新文章
- python实现gauss-seidel迭代公式_python实现高斯(Gauss)迭代法的例子
- Oracle Logminer 做数据恢复 说明示例
- MVC模型构建管理系统
- pojo java,什么是java pojo类,java bean,普通类?
- RLE重铸回归方法的荣光后,回归和热图的异同究竟在何方?
- python作业6月14日
- LSMW one tip - 字段定义
- NodeJS解决跨域问题:Access-Control-Allow-Origin
- springboot 拦截器的坑 WebMvcConfigurationSupport 失效
- mysql使用游标删除数据库_mysql 使用游标进行删除操作的存储过程
- 沿环形路径创建渐变画笔
- 算法 Tricks(六)— if 条件分支的简化
- 【转】让你的手机成为你的电脑摄像头
- ps排版html,排版教程,超详细适合初学者的排版教程
- LDAP认证-ldap介绍
- unity shader shaderLab 手册
- Basler相机全部型号详细参数
- 计算机高配方案,电脑主机i5 9400F升10400/GTX1660Super高配吃鸡方案推荐
- 作为人才我们为什么要和几个猎头保持良好的关系?
- 刷脸支付互联网巨头纷纷从线上走到线下