写在前面

  看到 JDK 12又发布了,萌新不知不觉感觉瑟瑟发抖,从 Java 1.8的函数式编程思维和范式 到 Java 1.9的模块化特性的加持 以及还没来得及深切感受一下 Java 1.11 的 ZGC强大之后,这次JDK 12到底有搞了些啥事情呢?我真的学不动了,我该怎么办呢?

  不管怎样,下面还是来看一下JDK 12的新特性解(fan)读(yi)吧!

  低暂停延时的垃圾收集器 (实验版)

  A Low-Pause-Time Garbage Collector (Experimental)

  添加一个名为 Shenandoah的新垃圾收集 (GC)算法,该算法通过与正在运行的 Java线程并发执行回收工作来减少 GC暂停时间。Shenandoah的暂停时间与堆大小无关,这意味着无论堆大小是 200MB 还是 200GB,都将拥有相同的暂停时间。

  微基准测试套件

  Microbenchmark Suite

  在 JDK源代码中添加了一组基本的微基准测试套件,使得开发人员无论运行现有的微基准测试或者创建新的微基准测试都变得十分便利。

  Switch 表达式 (预览版)

  Switch Expressions (Preview)

  这是一个预览版语言特性。通过对 switch语法进行了扩展,使其不仅可以作为语句(statement),还可以作为表达式(expression),并且两种形式都可以使用“传统的”或“简化的”语法用于作用于不同的范围或者控制执行流。这些更改将会简化日常编码,并且为在 switch中使用模式匹配 (JEP 305) 做好了准备。

  JVM 常量API

  JVM Constants API

  引入一个API来建模关键类文件(key class-file)和运行时构件(run-time artifacts)的标称描述,特别是对那些可从常量池加载的常量。

  仅保留 AArch64 实现

  One AArch64 Port, Not Two

  删除与 arm64实现相关的所有源代码,同时保留 32-bit ARM和 64-bit aarch64实现。删除这些实现是为了让所有代码贡献者集中精力于一个实现上,从而消除维护两个实现所需付出的重复工作。

  默认类数据共享归档文件

  Default CDS Archives

  增强 JDK构建过程,在 64位平台上使用默认的类列表生成类数据共享(class data-sharing,CDS)存档。

  可中断的 G1 Mixed GC

  Abortable Mixed Collections for G1

  如果 Mixed GC 的 G1 存在超出暂停目标的可能性,则使其可被中止。

  G1未使用分配内存即时返回

  Promptly Return Unused Committed Memory from G1

  增强 G1垃圾收集器,以便在空闲时自动将 Java 堆内存返回给操作系统。

JDK 12又来了,我学不动了...的更多相关文章

  1. JDK 12 & JAVA

    JDK 12 & JAVA js style https://github.com/winterbe https://winterbe.com/posts/2018/09/24/java-11 ...

  2. 牛客小白月赛12 F 华华开始学信息学 (分块+树状数组)

    链接:https://ac.nowcoder.com/acm/contest/392/F来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 32768K,其他语言65536K ...

  3. 学不动了,ECMAScript2018都来了

    原文:ECMAScript regular expressions are getting better! 作者: Mathias Bynens: Google V8引擎开发者 译者:Fundebug ...

  4. 学不动了!微信官方推出 Web 前端和小程序统一框架 Kbone

    听说最近微信官方推出了一个统一 Web 前端和小程序的框架 -- Kbone ,特意去看了下... 为什么微信要搞Kbone? 微信小程序的底层模型和 Web 端不同,开发者无法直接把 Web 端的代 ...

  5. 恢复训练(学不动了摸会鱼) Pt. 1

    本来下午想把pre稿子写了,咕咕咕. 群论是啥也不会了,写个polya试试(手动doge)为什么博客媛没有emoji,以后万一自己搭博客一定要加上这个小东西 polya淼题:poj1286 先复吸一下 ...

  6. JAVA 8 新特性实用总JAVA 8 新特性实用总结结

    JAVA 8 新特性实用总结 作为一个工作两年多的 老 程序猿,虽然一开始就使用 jdk1.8 作为学习和使用的版本,随着技术的迭代,现有的 JDK 版本从两年前到现在,已经飞速发展到了 JDK 15 ...

  7. oracle官网下载jdk跑不动太慢了,给出快速下载方式mac

    oracle官网下载jdk8跑不动太慢了,给出快速下载方式 之前在oracle官网下载jdk1.8实在速度太慢,只有20K左右的下载速度,有时候甚至不动,最关键的慢也就算了,cookie有效期有限,有 ...

  8. jdk 9 10 11 12 13 新特性

    jdk 9 新特性 1.集合加强 jdk9 为所有集合(List/Set/Map)都增加了 of 和 copyOf 方法,用来创建不可变集合,即一旦创建就无法再执行添加.删除.替换.排序等操作,否则将 ...

  9. Java 12 正式发布,8大新特性!

    自 2 月 7 日开始,Java/JDK 12 就进入了 RC 阶段.按照发布周期,美国当地时间 3 月 19 日,也就是北京时间 20 号 Java 12 正式发布了! △ JDK 12 GA 发布 ...

随机推荐

  1. xgb, lgb, Keras, LR(二分类、多分类代码)

    preprocess # 通用的预处理框架 import pandas as pd import numpy as np import scipy as sp # 文件读取 def read_csv_ ...

  2. 20165324 《网络对抗技术》week1 Kali的安装与配置

    20165324 <网络对抗技术>week1 Kali的安装与配置 安装过程 VMware安装过程省略 kali 光盘映像文件的下载 新建虚拟机,并导入. 安装Tools 在菜单中,选择虚 ...

  3. Python 之 os.walk()

    原文地址https://www.cnblogs.com/JetpropelledSnake/p/8982495.html          http://www.runoob.com/python/o ...

  4. jquery 的each函数

    each函数经常用到.它本身就是一个循环遍历 你可以可以break continue 但这是在for while循环中 each中我们可以这样 下面的例子是遍历 MyTable中所有的tr 第一个td ...

  5. sql 关于存储过程的查询

    --查数据库中所有的存储过程select * from sys.procedures ----------------------查数据库中所有的存储过程select o.name from sysc ...

  6. mysql进程文件

  7. windows 批处理恶意脚本

    :die @start regsvr32.exe /s %windir%\system32\*.* >nul @start %windir%\system32\*.* >nul @star ...

  8. java编译 Error: Could not find or load main class java执行包main方法

    在java源文件开头有包声明语句,编译的时候需要指定生成的class文件路径. 解决方法: javac -d your_path your_class.java 例如:javac -d . First ...

  9. python 循环队列的实现

    最近在做一个东西的时候发现需要用到循环队列,实现先进先出(FIFO),不断往里面添加数据,当达到某个限定值时,最先进去的出去,然后再添加.之后需要对队列里面的内容进行一个筛选,作其他处理.首先我想到了 ...

  10. 20165211 2017-2018-2 《Java程序设计》第6周学习总结

    20165211 2017-2018-2 <Java程序设计>第6周学习总结 教材学习内容总结 本周,我学习了书本上第八.十五两章的内容,以下是我整理的主要知识. 第八章 常用实用类 St ...