2024年Java大会:面向开发者的主要公告

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

2024年Java大会:将改变生态系统的主要公告



2024年10月底,年度JavaOne大会在旧金山圆满落幕——这是所有Java开发者最重要的活动之一。组织者和社区领袖发布了一系列备受期待的公告,这些公告将决定该平台未来几年的发展方向。我们为您整理了最重要的内容。



Project Valhalla:值类型成为现实



最重要的消息之一是宣布Project Valhalla即将完成。该计划旨在引入值类型(value types)和原始类。这一创新将使开发者能够创建更高性能、更紧凑的数据结构,避免与堆中对象相关的开销。



  • 值类(Value classes)——一种声明类型的新方式,其行为类似于原始类型,但同时又拥有方法。
  • 扁平内存布局(Flat memory layout)——数据将存储在栈中或堆中线性排列,从而加快访问速度并减轻垃圾回收器的负担。
  • 兼容性——值类型将与现有代码完全向后兼容。


预计首批预览版本将在Java 24中推出,而完整实现将在后续版本中发布。



Project Loom:虚拟线程迈上新台阶



在Java 21中虚拟线程成功亮相后,开发团队宣布扩展Project Loom。大会上展示了用于多线程处理的新工具:



  • 作用域值(Scoped values)——ThreadLocal的替代方案,用于在虚拟线程中传递上下文,开销更小。
  • 结构化并发(Structured Concurrency)——用于管理线程组的新API,简化了错误处理和任务取消。
  • 改进的调试——在未来的JDK版本中,将能够在不损失性能的情况下详细分析虚拟线程。


得益于这些变化,Java对于构建高负载异步服务变得更具吸引力。



Project Amber:语法简化



语言方面也有改进。在Project Amber框架下,宣布了新的语法特性,将使代码更简洁、更精炼:



  • switch的模式匹配(Pattern Matching for switch)——最终版本,包括对原始类型的支持和更灵活的条件。
  • 记录模式(Record Patterns)——现在可以直接在条件中分解记录(record),这在处理嵌套结构时特别有用。
  • 字符串模板(String Templates)——简化字符串插值,无需引入外部库。


生态系统:GraalVM 和 Spring Boot



特别值得一提的是Oracle和社区的公告:

  • GraalVM 24.1——改进了对微服务原生镜像的支持,启动时间缩短至几十毫秒。
  • Spring Boot 4.0——首批细节:框架将Java 21+作为最低版本,并与虚拟线程更深入地集成。
  • OpenJDK——加速发布周期:Java 24预计于2025年3月发布,而

推荐库