从Java新特性看Java的未来

大数据DT

共 2669字,需浏览 6分钟

 · 2022-06-20

导读:Java 17 更新划重点!


来源:华章计算机(ID:hzbook_jsj)



01 Java17 更新内容一览

JDK 17 增加了新的语言增强功能,对库进行更新,支持新款 Apple 计算机,移除和弃用旧功能,并且确保用户编写的 Java 代码在未来的 JDK 版本中可以继续正常工作。此外,JDK 17 还提供语言功能预览版和孵化阶段的 API,以收集来自 Java 社区的反馈。具体更新内容包括:

1. Java 语言增强功能

JEP 409:密封类 — 密封类和接口限制其他类或接口扩展或实现它们。此增强功能是Project Amber的又一项改进,旨在通过发展 Java 语言来提高开发人员的生产力。

2. 对库进行更新和优化

  • JEP 306:恢复始终严格的浮点语义 — Java 编程语言和 Java 虚拟机最初只有严格的浮点语义,从 Java 1.2 开始,为了适应当时硬件架构的限制,曾默认允许这些严格语义中的细微变化。现在不再需要这些变化,已在 JEP 306 删除。
  • JEP 356:增强型伪随机数生成器 — 增加伪随机数生成器 (PRNG) 的新接口类型和实现方法,提高了不同 PRNG 的互操作性,并且易于根据需求请求算法,而不是对特定实现进行硬编码。
  • JEP 382:新的 macOS 渲染管道 — 通过使用新的 Apple Metal API 为 macOS 实现 Java 2D 渲染管道,减少了 JDK 对已弃用的 Apple OpenGL API 的依赖。

3. 支持新平台

  • JEP 391:macOS AArch64 端口 — 将 JDK 移植到 macOS/AArch64 平台,Java 应用可以原生运行于基于 Arm 64 的新 Apple Silicon 计算机。

4. 移除和弃用

  • JEP 398:弃用即将移除的 Applet API — 所有 Web 浏览器供应商正计划或已经停止支持 Java 浏览器插件。Applet API 已于 2017 年 9 月在 Java 9 中弃用,但并未移除。
  • JEP 407:移除 RMI 激活 — 移除远程方法调用 (RMI) 激活机制,保留其他 RMI。
  • JEP 410:移除实验性的 AOT 和 JIT 编译器 — 基于 Java 的提前 (AOT) 和即时 (JIT) 实验性编译器并未被广泛采用。作为一个选择性功能,AOT 和 JIT 编译器已在 JDK 16 中移除,本次在 JDK 源代码中移除。
  • JEP 411:弃用即将删除的安全管理器 — 从 Java 1.0 开始,安全管理器一直都不是保护客户端 Java 代码的主要手段,也很少用于保护服务器端代码。在未来的版本中会移除安全管理器,以消除大量维护负担,让 Java 平台能够向前发展。

5. 面向未来的Java程序

  • JEP 403:JDK 内部强封装 — 用户再也不能像在 JDK 9 到 JDK 16 中一样,通过单个命令行选项来放宽对内部元素的强封装。用户仍然可以访问现有的内部 API ,但需要以命令行参数形式或 JAR 文件清单属性进行枚举,且每个包应该放宽封装。此更改将使应用程序更安全,并减少对非标准、内部 JDK 实现细节的依赖。

6. 未来JDK发行版的预览版和孵化器

  • JEP 406:Switch 模式匹配(预览版)— 允许Switch表达式针对多个模式进行测试,每个模式都有特定的操作,从而简洁、安全地表达面向数据的复杂查询。
  • JEP 412:外部函数和内存 API(孵化阶段)— 改进 JDK 14 和 JDK 15 中引入的孵化 API,让 Java 程序与 Java 运行时之外的代码和数据进行互操作。通过有效调用外部函数(即 JVM 之外的代码),以及安全地访问外部内存,这些 API 可以调用本地库和处理本地数据,并且不受 Java 本机接口 (Java Native Interface, JNI) 的脆弱性和复杂性影响。这些 API 正在Project Panama中开发,目的是改进 Java 和非 Java 代码之间的交互性。
  • JEP 414:矢量 API(二次孵化阶段)— 允许以一种在运行时,可靠地编译为支持的 CPU 架构上的最佳向量指令的方式表达向量计算,从而实现优于等效标量计算的性能。


02 如何快速掌握Java17新特性

请阅读针对Java 17全面更新的《Java核心技术》第12版。


《Java核心技术》第12版延续之前版本的优良传统,用数百个实际的工程案例,全面系统地讲解了Java语言的核心概念、语法、 重要特性、 开发方法。本书不仅让你深入了解设计和实现 Java 应用涉及的所有基础知识和 Java 特性,还会帮助你掌握开发 Java 程序所需的全部基本技能。相信在学习Java的道路上有了本书的辅助,你的学习一定可以做到事半功倍。


03 从Java17新特性看Java未来

由国内 Java 技术传播领军机构机械工业出版社华章分社发起的【 Java 核心技术大会 2022】,6月11日至6月18日连续8天,8个专场、24个主题演讲,众多行业领军人物带你深入探讨 Java 生态!

扫码免费报名👇


这个与世界顶级Java大师对话的机会千载难逢,欢迎大家在直播间留言互动。我们也将送出电子书卡、纸书等丰厚好礼,敬请期待。


刷刷视频👇


干货直达👇


更多精彩👇

在公众号对话框输入以下关键词
查看更多优质内容!

读书 | 书单 | 干货 | 讲明白 | 神操作 | 手把手
大数据 | 云计算 | 数据库 | Python | 爬虫 | 可视化
AI | 人工智能 | 机器学习 | 深度学习 | NLP
5G | 中台 | 用户画像 数学 | 算法 数字孪生

据统计,99%的大咖都关注了这个公众号
👇
浏览 3
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报