当前位置: 首页 > 图灵资讯 > 技术篇> Java 20和IntelliJ IDEA,一起让开发变得更轻松!

Java 20和IntelliJ IDEA,一起让开发变得更轻松!

来源:图灵教育
时间:2023-04-28 09:26:15

  IntelliJ IDEA,它是java编程语言开发的集成环境。intelliJ被公认为业内最好的java开发工具,特别是在智能代码助手、自动代码提示、重构、JavaEE支持和各种版本的工具中(git、svn等)、JUnit、CVS集成,代码分析, GUI设计的创新功能可以说是非凡的。

Java 20和IntelliJ IDEA,一起让开发变得更轻松!_泛型

  与之前的一些版本相比,Java 20 新功能相对较少。 它作为孵化引入了作用域值 API,虚拟线程是通过在线程内和跨线程共享不可变数据来支持的。 在其第二个预览版本中,记录模式改进了对泛型记录模式的支持,并支持增强 for 在句子中使用记录模式。 在第四个预览版中,switch 模式匹配改进了其详细的处理 switch、简化 switch 实参使用标签和推断泛型记录模式的类型。

  在 Java 20 在第二个预览版中,Foreign Function & Memory API 继续改进其功能 Java 代码能够与 JVM 对话外部代码和数据。 虚拟线程是一种轻量级线程,它将彻底改变您创建多线程应用程序的方式。最新的虚拟线程由结构化并发支持 Java 在版本的另一个预览版本中推出。 Vector API 目前正处于预览版的第五阶段,可以帮助您在代码中进行矢量计算。

  在本文中,我将介绍IntelliJi IDEA支持语言功能,如记录模式和 switch 模式匹配,并将特别介绍最有趣的变化,如改进泛记录模式的类型推断,详细介绍 switch 句子和表达式,以及增强 for 支持句头中的记录模式。

  IntelliJ IDEA 正式版下载v2023.1IntelliJ IDEA 配置

  IntelliJ IDEA 2023.1中提供了对 Java 20 支持,未来 IntelliJ IDEA 版本将提供更多的支持。

  要使用 Java 20 例如,记录模式和 switch 请将模式匹配等新语言功能转移到ProjectSettings | Project(项目设置 | 项目),将 Project SDK(项目 SDK)设置为 20,将 Project language level(项目语言水平)设置为20 (Preview) – Record patterns (second preview), Pattern Matching for switch (fourth preview):

Java 20和IntelliJ IDEA,一起让开发变得更轻松!_Java_02

  您可以使用系统上下载的任何版本 JDK,也可以点击Edit然后选择(编辑)Add SDK >Download JDK…(添加 SDK > 下载 JDK…)下载其他版本,从供应商列表中选择要下载的版本 JDK 版本。

  在 Modules在(模块)标签页上,确保为模块选择相同的语言级别 –20 (Preview) – Record patterns (second preview), Pattern Matching for switch (fourth preview):

Java 20和IntelliJ IDEA,一起让开发变得更轻松!_泛型_03

  选择此选项后,可能会出现以下弹出窗口,通知您IntelliJiJi IDEA可能会在后续版本中停止 Java 支持预览语言功能。 因为预览功能不是永久性的,而且可能在未来 Java 版本中的变化(甚至被删除)。switch 的模式匹配

  在 Java 20 中,switch 模式匹配已进入预览版的第四阶段。 如果您完全不熟悉模式匹配,建议您首先了解此链接 instanceof 模式匹配。 假如你还不熟悉 switch 模式匹配,请参见此链接。

  Java 20 对此功能进行了一些改变。 与枚举类结合使用时,如果详细的话 switch 语句或 switch 如果表达式在运行中找不到匹配的标签,则表达式在运行中找不到匹配的标签 switch 模式匹配现在将抛出Matchexception,而不是抛出Imcompatibleclaschangeeror。 Java 20 中间功能的另一个变化是关于 case 推断标签中泛型记录模式的类型形参。总结

  IntelliJ IDEA继续减少开发者的最新使用 Java 功能的认知负担,IntelliJ IDEA 2023.1 支持 Java 20 添加到“中间”switch 这些功能中最有趣的变化,如模式匹配和“记录模式”,支持增强 for 记录模式用于句头,以及对泛型记录模式类型实参类型推断的改进。