jdk11特性介绍

news2024/12/26 13:37:23

9ea0eb53716e4fd4a2afb3d7a7814595.jpgJDK 11(也称为Java 11)是Java平台的一个重要版本,它引入了许多新特性和改进,旨在提高开发者的生产力和Java平台的性能。以下是一些JDK 11的主要特性:

 

 

局部变量类型推断(Local-Variable Syntax for Lambda Parameters):

 

允许在lambda表达式的参数中使用var关键字进行类型推断,这简化了代码编写,特别是在处理复杂的泛型时。然而,需要注意的是,这个特性实际上在Java 10中作为预览功能引入,并在Java 11中成为正式功能。

 

HTTP客户端(HTTP Client):

 

引入了一个新的HTTP客户端API,作为java.net.http包的一部分。这个API提供了完整的HTTP/2和WebSocket客户端功能,旨在替代旧的HttpURLConnection API。

 

动态类数据共享(Dynamic Class-Data Sharing):

 

允许JVM在多个Java虚拟机实例之间共享类元数据,以减少内存占用并提升启动时间。这对于容器化环境特别有用,如Docker和Kubernetes。

 

字符串API的更新:

 

增加了几个新的字符串操作方法,如isBlank()(检查字符串是否为空或仅包含空白字符)、strip()、stripLeading()、stripTrailing()(去除字符串两端的空白字符)等。

 

ZGC(Z Garbage Collector):

 

引入了一种新的垃圾收集器,旨在减少停顿时间。ZGC是一个可伸缩的低延迟垃圾收集器,适用于大堆(heap sizes)应用。

 

Epsilon垃圾收集器:

 

这是一个完全不做任何垃圾回收的收集器,一旦堆内存耗尽,JVM就会退出。这主要用于性能测试和内存泄漏检测。

 

Flight Recorder:

 

这是一个低开销的JVM性能分析工具,现在被集成到JDK中,并作为JVM的一部分提供。它允许开发者收集详细的运行时信息,以进行性能分析和调优。

 

JShell(Java Shell):

 

JShell是一个交互式编程环境,允许开发者直接运行Java代码片段,并立即看到结果。这对于学习和实验Java新特性非常有用。

 

集合API的更新:

 

增加了几个新的集合工厂方法,如List.of()、Set.of()、Map.of()和Map.ofEntries(),这些方法允许以不可变集合的形式快速创建集合实例。

 

移除Java EE和CORBA模块:

 

JDK 11移除了对Java EE和CORBA模块的内置支持,这些模块现在需要通过外部库来添加。这是Java平台向模块化迈进的一步,旨在减少JDK的大小和复杂性。

 

这些特性共同构成了JDK 11的丰富功能集,为Java开发者提供了更强大的工具集和更高效的开发环境。

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

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

相关文章

VMWare虚拟机安装CentOS-7-x86_64-DVD-1611操作系统

VMWare虚拟机安装CentOS7操作系统 1、虚拟机准备打开VMware单机创建新的虚拟机典型与自定义安装选择虚拟机硬件兼容性选择安装程序光盘映射文件(iso)选择客户机操作系统命名虚拟机处理器配置内存配置网络连接类型I/O类型选择磁盘类型选择磁盘指定磁盘的最大磁盘大小磁盘名称我们…

【Python报错已解决】TypeError: ‘<‘ not supported between instances of ‘str‘ and ‘int‘

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 专栏介绍 在软件开发和日常使用中,BUG是不可避免的。本专栏致力于为广大开发者和技术爱好者提供一个关于BUG解决的经…

element-ui 日期选择器禁用某段特定日期

element-ui 日期选择器设置禁用日期 效果图如下: 2024-09-01 到2024-09-18之间的日期都不可选 2024-01-01之前的日期都不可选 官方文档中 picker-options 相关的介绍 实现功能: ​ 某仓库有限制最大可放置资产数量,且资产出借和存放都有记录。由于线下仓库资产出借和购…

Card View 卡片视图

Goto 数据网格和视图入门 Card View 卡片视图 The Card View displays data records as cards, arranged down and then across. Card fields are always arranged in a single column. The Card View is represented by the CardView class. Card View (卡片视图…

2024 SNERT 预备队招新 CTF 体验赛-Web

目录 1、robots 2、NOF12 3、get_post 4、好事慢磨 5、uploads 6、rce 7、ezsql 8、RCE 1、robots robots 协议又叫爬虫协议,访问 robots.txt 继续访问 /JAY.php 拿到 flag:flag{hello_Do_YOU_KONw_JAY!} 2、NOF12 F12 和右键都被禁用 方法&#…

[Linux]用户管理指令

开机/重启/登录/注销 进入xhsell 或者虚拟系统中, 右键桌面打开终端, 在终端执行命令, 重启或关机linux系统 建议使用普通账号登录, 如果权限不够时, 使用 su - 用户名 命令切换到超管, 然后再使用 logout命令退回到普通账号, logout 不能在图形界面的终端中使用 用户管理 Li…

Python画笔案例-058 绘制单击画酷炫彩盘

1、绘制单击画酷炫彩盘 通过 python 的turtle 库绘制 单击画酷炫彩盘,如下图: 2、实现代码 绘制单击画酷炫彩盘,以下为实现代码: """单击画酷炫彩盘.py"""from turtle import Turtle # 导入海龟类 from random import randint…

电子设计入门教程硬件篇之三极管BJT(四)

前言:本文为手把手教学的电子设计入门教程硬件类的博客,该博客侧重针对电子设计中的硬件电路进行介绍。本篇博客将根据电子设计实战中核心器件之一的三极管进行详细讲解,包含:PNP型与NPN型三极管。电子设计实践中的三极管是嵌入式…

心理教育辅导系统:Spring Boot技术实现

4 系统设计 4.1系统概要设计 高校心理教育辅导系统主要分为管理员、教师和学生三个角色,系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任…

xhs 小红书 x-s web 分析

声明: 本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关! 有相关问题请第一时间头像私信联系我…

TryHackMe 第3天 | Pre Security (二)

该学习路径讲解了网络安全入门的必备技术知识,比如计算机网络、网络协议、Linux命令、Windows设置等内容。上一篇中简短介绍了计算机网络相关的知识,本篇博客将记录 网络协议 部分。 How the web works? DNS in detail DNS (Domain name system&…

19 基于51单片机的倒计时音乐播放系统设计

目录 一、主要功能 二、硬件资源 三、程序编程 四、实现现象 一、主要功能 五个按键,分别为启动按键,则LCD1602显示倒计时,音乐播放 设置按键,可以设置倒计时的分秒,然后加减按键,还有最后一个暂停音乐…

基于 Web 的工业设备监测系统:非功能性需求与标准化数据访问机制的架构设计

目录 案例 【说明】 【问题 1】(6 分) 【问题 2】(14 分) 【问题 3】(5 分) 【答案】 【问题 1】解析 【问题 2】解析 【问题 3】解析 相关推荐 案例 阅读以下关于 Web 系统架构设计的叙述,回答问题 1 至问题 3 。 【说明】 某公司拟开发一款基于 Web 的…

BERT的代码实现

目录 1.BERT的理论 2.代码实现 2.1构建输入数据格式 2.2定义BERT编码器的类 2.3BERT的两个任务 2.3.1任务一:Masked Language Modeling MLM掩蔽语言模型任务 2.3.2 任务二:next sentence prediction 3.整合代码 4.知识点个人理解 1.BERT的理论 B…

代码随想录算法训练营第58天|卡码网 117. 软件构建、47. 参加科学大会

1. 卡码网 117. 软件构建 题目链接:https://kamacoder.com/problempage.php?pid1191 文章链接:https://www.programmercarl.com/kamacoder/0117.软件构建.html 思路:使用BFS BFS的实现思路: 拓扑排序的过程,其实就两步…

Java : 图书管理系统

图书管理系统的作用: 高效的图书管理 图书管理系统通过自动化管理,实现了图书的采编、编目、流通管理等操作的自动化处理,大大提高了图书管理的效率和准确性。 工作人员可以通过系统快速查找图书信息,实时掌握图书的借还情况&…

经典报童问题的2类扩展实例:带广告的报童问题和多产品报童问题

文章目录 1 引言2 经典报童问题3 带广告的报童问题3.1 论文解读3.2 样本均值近似方法 4 多产品报童问题4.1 论文解读4.2 算法模型4.3 简单实例求解4.4 复杂实例求解 5 总结6 相关阅读 1 引言 中秋已过,国庆未至,趁着这个空窗期,学点新知识&a…

解决DockerDesktop启动redis后采用PowerShell终端操作

如图: 在启动redis容器后,会计入以下界面 : 在进入执行界面后如图: 是否会觉得界面过于单调,于是想到使用PowerShell来操作。 步骤如下: 这样就能使用PowerShell愉快地敲命令了(颜值是第一生…

AttributeError: ‘Sequential‘ object has no attribute ‘predict_classes‘如何解决

今天跟着书敲代码,报错: Sequential object has no attribute predict_classes,如图所示: 上网百度,发现predict_classes函数在新版本中已经删除了,需要使用 model.predict() 替代 model.predict_classes()…

【java面经速记】Mysql和ES数据同步

目录 Mysql业务数据库 ES查询数据库 数据同步方案 同步双写 异步双写(MQ方式) 基于Mysql的定时扫描同步 基于Binlog实时同步 使用canal监听binlog同步数据到es(流行方案) 拓展:mysql的主从复制原理 canal原理&#xff1a…