首页 > 编程语言 >Java18新特性有哪些

Java18新特性有哪些

时间:2024-06-03 15:29:18浏览次数:30  
标签:JEP Java 哪些 Java18 特性 发布 API 引入 SE

Java 18 于 2022 年 3 月 22 日正式发布,它带来了一些新特性和改进,主要包括以下几点:

  1. JEP 400: UTF-8 by Default123:JDK 将 UTF-8 设置为默认字符集,这使得依赖于默认字符集的 API 在所有实现、操作系统、区域设置和配置中保持一致。

  2. JEP 408: Simple Web Server123:引入了一个简单的 Web 服务器,通过命令行工具 jwebserver 可以启动一个只提供静态文件的最小网络服务器,主要用于原型设计、临时编码和测试目的。

  3. JEP 413: Code Snippets in Java API Documentation123:为 JavaDoc 的 Standard Doclet 引入了 @snippet 标签,简化了在 API 文档中嵌入示例源代码的难度。

  4. JEP 416: Reimplement Core Reflection with Method Handles1:使用方法句柄重新实现反射核心,以提高性能和安全性。

  5. JEP 417: Vector API1:向量 API 是第三次孵化,旨在提供一种更高效的处理 SIMD 指令的方式。

  6. JEP 418: Internet-Address Resolution SPI1:互联网地址解析 SPI,允许自定义 IP 地址解析逻辑。

  7. JEP 419: Foreign Function & Memory API (Second Incubator)1:外部函数和内存 API 是第二次孵化,用于安全地调用本地代码和操作内存。

  8. JEP 420: Pattern Matching for switch (Second Preview)1:switch 模式匹配的第二次预览,进一步增强了 switch 语句的表达能力。

  9. JEP 421: Deprecate Finalization for Removal1:计划废弃 finalization,因为其不可靠且难以预测。

这些特性旨在提高开发效率、性能和安全性,同时为 Java 语言的未来发展奠定基础

历史版本

Java 语言自诞生以来,经历了多个版本的迭代更新,以下是一些主要历史版本的概览:

1. JDK 1.0:1996年发布,Java语言的第一个开发工具包。
2. JDK 1.1:1997年发布,引入了内部类、反射等特性。
3. J2SE 1.2:1998年发布,引入了JIT编译器和JavaBeans等。
4. J2SE 1.3:2000年发布,增加了对XML的支持。
5. J2SE 1.4:2002年发布,引入了断言、正则表达式等特性。
6. Java SE 5.0 (1.5.0):2004年发布,也被称为Tiger,引入了泛型、枚举、注解等。
7. Java SE 6 (1.6.0):2006年发布,也被称为Mustang,引入了脚本引擎、编译时注解处理等。
8. Java SE 7 (1.7.0):2011年发布,也被称为Dolphin,引入了switch字符串支持、try-with-resources等。
9. Java SE 8 (1.8.0):2014年发布,引入了Lambda表达式、Stream API等。
10. Java SE 9:2017年发布,引入了模块系统、改进的JVM等。
11. Java SE 10:2018年发布,引入了局部变量类型推断等。
12. Java SE 11:2018年发布,也被称为长期支持(LTS)版本,引入了新的HTTP客户端等。
13. Java SE 12 至 17:这些版本继续引入了新的语言特性和API改进。

值得注意的是,随着Java的发展,命名约定也发生了变化。在Java SE 9之后,版本命名开始采用年份加版本号的形式,如Java 12、Java 13等。此外,从Java 11开始,Oracle JDK提供了长期支持(LTS)版本,这些版本会获得更长时间的更新和支持。

标签:JEP,Java,哪些,Java18,特性,发布,API,引入,SE
From: https://blog.csdn.net/wangbo_angel/article/details/139415845

相关文章

  • ip地址快速切换软件有哪些好处
    ip地址快速切换软件有哪些好处?IP地址快速切换软件具有诸多显著的好处,以下是对其主要优势的详细阐述:首先,IP地址快速切换软件极大地提升了网络活动的灵活性和便捷性。对于需要经常切换网络环境或进行多账号管理的用户而言,这类软件无疑是一个强大的助手。无论是出于工作需要还是......
  • NoSQL数据库:定义、特性、分类与应用场景的探索
    目录一、引言二、NoSQL的定义与起源三、NoSQL的特性四、NoSQL的分类五、NoSQL的应用场景六、NoSQL数据库在物联网(IoT)应用中的优势最近在做关于NoSQL的市场调研,于是浅写下调研的总结,给大家分享,当做科普,希望大家多多支持。一、引言在当今数据爆炸的时代,数据成为驱动社......
  • Go高阶16,面试官问我go逃逸场景有哪些,我???
    「逃逸分析」就是程序运行时内存的分配位置(栈或堆),是由编辑器来确定的,而非开发者。什么是栈栈只允许从线性表的同一端放入和取出数据,按照后进先出(LIFO,LastInFirstOut)的顺序,如下图:什么是堆对于堆在内存中的分配,我们可以类比成一个房间,分配内存时,需要找一块足够装下家具......
  • Spring Boot 3.3.0 新特性| 使用 CDS 优化启动时间
    一、CDS是什么?类数据共享(CDS)是一项JVM功能,可帮助减少Java应用程序的启动时间和内存占用。从JDK12开始,默认的CDS归档文件与OracleJDK二进制文件一起预打包。笔者测试使用的 OpenJDK64-BitServerVMZulu21.34+19-CA(build21.0.3+9-LTS,mixedmode,sharin......
  • 开源项目管理软件有哪些?分享7个实用开源项目管理软件
    本文将分享7款开源项目管理软件:PingCode、Worktile、OpenProject、GanttProject、OrangeScrum、TAIga、Redmine。在快速变化的商业环境中,项目管理扮演着至关重要的角色。随着开源文化的普及,越来越多的组织开始采用开源项目管理软件,以降低成本并提高项目透明度和灵活性。本文将......
  • Redis5学习笔记之四:高级特性(持久化、订阅、主从复制、缓存穿透和雪崩)
    4.redis高级特性4.1持久化Redis的数据全部在内存里,如果突然宕机,数据就会全部丢失,因此必须有一种机制来保证Redis的数据不会因为故障而丢失,这种机制就是Redis的持久化机制。Redis有两种持久化的方式:快照(RDB文件)和追加式文件(AOF文件)4.1.1RDB在指定的时间间隔内将内......
  • 有损线、上升边退化与材料特性(七)
    有损线的不良影响当信号沿着实际有损线传输时,高频分量的幅度减小,而低频分量的幅度保持不变。由于这个种选择性的衰减,信号的带宽降低,信号的上升边会增长。如果上升边的退化与单位间隔比很小,同位模式将比较稳定与前位波形无关。如果上升边的退化使接收到的上升边显著拉长到与单......
  • 光纤传感器产品特性解析
    一前记  光纤传感器天然具有抗电磁、原子辐射干扰的能力,具备工作温度高,多传感器组网,可信号预处理分析,数字化通用接口等诸多优点,因此在重大工程设备上智能光纤传感器有很多的应用场景。经过长期的技术积累。团队在光纤传感器领域形成了产品矩阵。这些产品可以广泛应用在工业......
  • @RequestMapping注解有哪些属性?
    在SpringFramework中,@RequestMapping注解用于将HTTP请求映射到MVC和REST控制器的处理方法上。它是SpringMVC中最基本的注解之一,可以应用在类级别或方法级别。@RequestMapping注解拥有多个属性,以下是其中的一些常用属性及其解释:value/path:类型:String[]描......
  • 智慧校园的应用场景有哪些
    在21世纪的教育挑战中,如何利用科技手段优化教育资源分配,提升教学质量?智慧校园给出了答案。基于信息化的教育改革,智慧校园不仅提升了校园管理的效率,更通过一系列智能化应用,重塑了教学、学习和交流的方式。这些应用场景,如智能教室、数字化学习平台和高效能的校园服务,正在逐步渗透......