你好,欢迎进入江苏优软数字科技有限公司官网!

诚信、勤奋、创新、卓越

友好定价、专业客服支持、正版软件一站式服务提供

13262879759

工作日:9:00-22:00

intellij idea java 21CTO 导读:IntelliJ IDEA 对 Java 11 新功能的特性支持介绍

发布时间:2025-06-26

浏览次数:0

21CTO 指导:IDEA 现已兼容发布 Java 11的最新版本。本文旨在详细介绍 IDEA 对 Java 11新增功能的特性支持及相关信息。

IntelliJ IDEA Java 11 新功能支持_Java 11 IntelliJ IDEA Lambda参数语法_intellij idea java

Java 11已于十一节前正式推出,或许是因为节日的缘故,让人感觉仿佛就在昨日;而一年前,我们对Java 9也曾发表过类似的感慨。

这个六个月的更新周期对开发者社区而言带来了显著的变化,Java开发者们得以定期享受到一系列引人入胜的新功能,这无疑让他们感到非常兴奋。

关于 Java 11

Java 11与Java 10相似,同样拥有一份简洁的新功能清单,这使得其中对开发者有益的内容更为直观。从IDEA的视角出发,实际上仅有一项功能得益于IDE的额外辅助,即JEP 323:局部变量的参数化语法。

在Java 8中引入表达式时,您可以编写如下内容:

= ( x, y) -> x.(y);

类型信息中涵盖了x和y两个参数,但这一信息无需再次提及,因为大家普遍知晓。在此情形下,左侧的泛型声明了这两种类型。IDEA软件支持您选择性地移除这些类型信息。

Java 11 IntelliJ IDEA Lambda参数语法_IntelliJ IDEA Java 11 新功能支持_intellij idea java

Java 10新增了局部变量类型推断的var关键字,这一点我们将在后续内容中进行详细阐述。而Java 11则在此基础上,对var在表达式参数中的应用进行了进一步的思考。其核心应用场景在于需要对参数进行注释时。由于注释需紧随类型之后,因此在Java 11发布之前,此类代码可能呈现如下形式:

= (@ x, @ y) -> x.(y);

在Java 11版本中,我们得以采用var关键字替代参数类型以简化代码,IDEA工具将自动完成这一转换过程。需要注意的是,当您在代码中遇到类型相关的问题并按下Alt + Enter键时,系统会推荐您进行此操作,尽管它不会在代码中生成警告提示。

如下图:

IntelliJ IDEA Java 11 新功能支持_Java 11 IntelliJ IDEA Lambda参数语法_intellij idea java

Java 11:开发者要有意识,一些API可能不存在了

除了掌握Java 11新增的语言特性之外,同样关键的是知晓该版本中去除了哪些功能。

这一操作不仅作用于未曾使用或已停止使用的特性与功能,而且可能通过将某些大型模块独立成单独的依赖库,比如;亦或是去除已采纳的外部依赖库,从而精简语言的核心部分,比如Java EE。

Java EE与CORBA模块已被移除,尽管CORBA的使用并不频繁,但众多应用依然采纳了Java EE。这种情况通常发生在应用程序服务器或Java EE特定实现的环境中,此时某些应用和库会利用Java EE的局部功能,以满足特定的需求。若JAXB已非核心语言之列,那么您便需引入一个特定的依赖库。

Java 10

这本版本距今年初已有半年之久,或许我们中的大多数人都尚未开始采用它。

在此特别指出,Java 10的核心新增特性是引入了var关键字,正如我们在上一张图中可以看到的那样intellij idea java,这一功能使得开发者能够采用var关键字进行变量声明,而无需再明确指定变量的具体类型。在Java中,这一改动并未引入动态类型,反而持续削弱了模板的使用倾向,就如同钻石运算符(https://www..com///core-java/core-java-jdk-7-the--.html)的加入一样intellij idea java,这表明我们不再需要在等号两边指定泛型类型。

IDEA提供了多种途径来辅助var的使用。首先,它允许您选择使用var关键字或用var替代类型。

intellij idea java_IntelliJ IDEA Java 11 新功能支持_Java 11 IntelliJ IDEA Lambda参数语法

在默认设置中,系统不会提醒你有关使用var(或需明确指定类型)的代码,然而,通常来说,参照你团队的样式规范进行代码审查是更为推荐的。

IntelliJ IDEA Java 11 新功能支持_Java 11 IntelliJ IDEA Lambda参数语法_intellij idea java

IDEA能辅助你进行代码导航,以便更好地运用var。操作时,请按下Ctrl键,并将鼠标指针置于var上,此时会呈现出该变量的数据类型。

intellij idea java_Java 11 IntelliJ IDEA Lambda参数语法_IntelliJ IDEA Java 11 新功能支持

与其它类型无异,我们可点击此处进行声明定位,亦或通过按Ctrl+B/ + B组合键借助var进行声明跳转。此外,在var上操作,我们可通过快捷文档(Ctrl + Q / F1)或快速定义(Ctrl + Shift + I / + Space)功能来查阅相关信息。

Java 11 IntelliJ IDEA Lambda参数语法_IntelliJ IDEA Java 11 新功能支持_intellij idea java

Java 10新增了若干针对API的优质改进,若您正在使用这些API,那么深入了解这些新增的方法将十分有益。

Java 9

去年9月推出的Java 9版本标志着重大变革,然而,令人惊讶的是,Java 10和Java 11已经相继超越了Java 9。部分JDK供应商(例如某些知名供应商)已停止对Java 9(以及Java 10)提供持续的技术支持。对于计划从Java 8直接过渡到Java 11的团队来说,即便不打算使用长期支持版本,也必须熟悉Java 9所引入的诸多改动,因为这些更新已经融入了Java 11的体系之中。

Java 9中,模块化功能尤为突出,此外还包含众多其他特性,比如新增的便捷工厂收集方法。对我来说,这无疑是Java 9中最受欢迎的功能之一。值得一提的是,IDEA代码检查工具还能提供代码迁移支持,帮助我们轻松采用这些新方法。

IntelliJ IDEA Java 11 新功能支持_intellij idea java_Java 11 IntelliJ IDEA Lambda参数语法

小结:关于版本迁移的说明

本文旨在介绍IDEA的最新特性,旨在简化Java 9、10和11版本的使用,而非专注于指导开发者将代码迁移至这些版本。

我们在此提出几点建议:若您计划不久后使用Java 11,首要任务是确保所有依赖项均已更新至最新版本。众多依赖Java 9的JVM语言、库及框架需进行重大调整,而要紧跟Java 10和Java 11的步伐,仍有许多改进工作亟待进行。在更新库版本之际,开发者需确保应用程序的影响降至最低,这堪称采纳最新Java版本的关键举措。

利用IDEA工具,可将Java 8代码平滑过渡至Java 9版本,并且能够实现无需痛感的模块化迁移。

Java 11 IntelliJ IDEA Lambda参数语法_intellij idea java_IntelliJ IDEA Java 11 新功能支持

Java 11 刚刚问世不久,然而 IDEA 已对其提供全面支持,同时使用上亦更为便捷。它不仅兼容了 Java 11 的特性,还简化了 Java 10 和 9 中新功能的运用。

今天咱们不妨来尝试一下。您可以去下载开源版本,具体链接是(http://jdk.java.net/11),这个版本目前已经适合用于生产环境了。

在此,我向您推荐选用构建工具,务必留意的是,该工具的使用许可已经发生了变更,它现在分为商业版和开源版两个版本,这一点对于您来说同样至关重要!

如有侵权请联系删除!

13262879759

微信二维码