当前位置: 首页 > news >正文

JAVA进化史: JDK12特性及说明

JDK 12于2019年3月发布。这个版本相对于之前的版本来说规模较小,主要集中在一些改进和实验性的特性上。以下是JDK 12的一些主要特性:

引入了实验性的Shenandoah垃圾收集器

JDK 12引入了实验性的Shenandoah垃圾收集器,旨在实现极低的暂停时间,适用于大内存堆的场景。

java -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -Xmx4g MyApp

引入了Microbenchmark Suite基准测试工具

引入了Microbenchmark Suite,这是一套用于执行微基准测试的工具。这有助于开发人员更准确地评估和改进代码的性能。

@Benchmark
public void myBenchmark() {// 微基准测试的代码
}

引入了switch表达式的预览功能

引入了switch表达式的预览功能,使得switch语句更加灵活,支持更简洁的写法。

// 使用switch表达式
int day = 3;
String dayName = switch (day) {case 1, 2, 3, 4, 5 -> "Weekday";case 6, 7 -> "Weekend";default -> throw new IllegalArgumentException("Invalid day: " + day);
};
System.out.println(dayName);

实验性地引入了可中止的混合收集

实验性地引入了可中止的混合收集(Abortable Mixed Collections),旨在改进G1垃圾收集器的性能。

java -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:+UseShenandoahGC -Xmx4g MyApp

http://www.lryc.cn/news/273701.html

相关文章:

  • Databend 的算力可扩展性
  • 「解析」Windows 如何优雅使用 Terminal
  • Linux第18步_安装“Ubuntu系统下的C语言编译器GCC”
  • 【Linux】Linux 基础命令 crontab命令
  • 14:00面试,14:08就出来了,问的问题过于变态了。。。
  • Ubuntu envs setting
  • Windows 下用 C++ 调用 Python
  • 九州金榜|家庭教育一招孩子不在任性
  • 爬虫案列 --抖音视频批量爬取
  • 【React系列】React中的CSS
  • 基于Kettle开发的web版数据集成开源工具(data-integration)-应用篇
  • 51单片机三种编译模式的相互关系
  • java 千帆大模型 流式返回
  • 全新互联网洗衣洗鞋小程序平台新模式
  • js 对于一些脚本中对于url的一些参数获取
  • IEDA中tomcat日志乱码解决
  • 计算机网络实验(六):三层交换机实现VLAN间路由
  • Flutter中showModalBottomSheet的属性介绍和使用
  • 机器学习 -- k近邻算法
  • 安全测试之SSRF请求伪造
  • php composer安装
  • 【MyBatis】MyBatis基础操作
  • Automatic merge failed; fix conflicts and then commit the result.如何处理
  • 一文读懂 $mash 通证 “Fair Launch” 规则(幸运池玩法解读篇)
  • Qt3D QGeometryRenderer几何体渲染类使用说明
  • pandasDataFrame读和写csv文件
  • 力扣122. 买卖股票的最佳时机 II
  • Go语言断言和类型查询
  • 02 Deep learning algorithm
  • 代码随想录算法训练营第二十四天 | 回溯算法