news 2026/4/18 0:00:03

JetBrains发布Kotlin 2.3.0版本更新

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
JetBrains发布Kotlin 2.3.0版本更新

Kotlin 2.3.0版本现已正式发布,这一语言更新提供了多项新功能,包括未使用返回值检查器和对Java 25的支持。此次发布包含多个实验阶段功能,如值检查器、Swift互操作性,以及显式支持字段的新语法。

JetBrains于12月16日发布了这次语言更新。安装说明可在blog.jetbrains.com找到。这一正式版本是在11月18日发布候选版本之后推出的。

在Kotlin 2.3.0中,新的未使用值检查器有助于防止忽略结果。当表达式返回除Unit或Nothing之外的值且未传递给函数、在条件中检查或以其他方式使用时,它会发出警告。该检查器有助于捕获因函数调用产生有意义结果却被静默丢弃而导致意外行为或难以追踪问题的错误。此功能目前处于实验阶段。

Kotlin 2.3.0中的另一项实验功能通过Swift导出改进了Kotlin与Swift的互操作性,增加了对原生枚举类和可变函数参数的支持。此前,Kotlin枚举被导出为普通的Swift类。现在通过直接映射,开发者可以使用常规的原生Swift枚举。

Kotlin 2.3.0的其他功能包括:

Kotlin编译器现在可以生成包含Java 25字节码的类。

显式支持字段为显式声明保存属性值的底层字段提供了新语法,与现有的隐式支持字段形成对比。

在具有显式返回类型的表达式体中支持return语句现已默认启用。

上下文敏感解析作为实验功能得到了改进。当前类型的密封和封闭超类型现在被视为搜索上下文范围的一部分。不再考虑其他超类型范围。当涉及类型操作符和等式时,如果使用上下文敏感解析导致解析模糊,编译器现在会报告警告。

向Kotlin/Native项目导入C和Objective-C功能的支持已进入测试阶段。

对于Kotlin/Wasm(WebAssembly),Kotlin 2.3.0默认为Kotlin/Wasm目标启用完全限定名,为wasmWasi目标启用新的异常处理提案。它还引入了Latin-1字符的紧凑存储。同时,新的WebAssembly异常处理提案对wasmWasi目标默认启用,确保与现代WebAssembly运行时更好的兼容性。

对于Kotlin/JS,挂起函数现在可以使用@JsExport注解直接导出到JavaScript,BigInt64Array类型现在可以用于表示Kotlin的LongArray类型。这两项都是实验功能。

不再支持Ant构建系统。

Q&A

Q1:Kotlin 2.3.0中的未使用返回值检查器是什么?

A:这是一个新的检查器,用于防止忽略函数调用的返回结果。当表达式返回除Unit或Nothing之外的值且未被使用时会发出警告,帮助开发者捕获因忽略有意义返回值而导致的潜在错误。

Q2:Kotlin 2.3.0对Swift互操作性有什么改进?

A:新版本通过Swift导出功能改进了与Swift的互操作性,增加了对原生枚举类和可变函数参数的支持。现在Kotlin枚举可以直接映射为Swift枚举,而不再导出为普通Swift类。

Q3:Kotlin 2.3.0支持哪些新的编程语言特性?

A:新版本支持Java 25字节码生成、显式支持字段的新语法、表达式体中return语句的默认支持,以及改进的上下文敏感解析功能。对于WebAssembly和JavaScript也有相应的功能增强。


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 8:27:36

中东2026年科技趋势:AI、网络安全和主权基础设施成为焦点

到2026年,中东地区的科技市场将由人工智能(AI)、网络安全和大规模基础设施投资的融合所塑造,在强劲但不平衡的区域增长背景下发展。 根据Omdia的数据,预计2026年全球科技支出将同比增长10.2%,超过6万亿美元大关。虽然中东地区预计…

作者头像 李华
网站建设 2026/4/18 8:27:30

document.write详解

JavaScript 中 document.write 详解 document.write() 是 JavaScript 中一个古老且原始的 DOM 操作方法,用于直接向文档流中写入 HTML 内容或文本。它属于早期 DOM Level 0 的特性,现在已被视为不推荐使用的方法。 基本语法 document.write(markup);m…

作者头像 李华
网站建设 2026/4/17 8:49:54

使用Miniconda环境实现Transformer模型蒸馏流程

使用Miniconda环境实现Transformer模型蒸馏流程 在当前深度学习研究与工程部署日益紧密的背景下,如何高效、可复现地完成复杂模型优化任务,成为开发者面临的核心挑战之一。以Transformer架构为代表的大型语言模型虽然性能卓越,但其高昂的推理…

作者头像 李华
网站建设 2026/4/17 12:41:55

使用Conda Forge频道安装非官方PyTorch构建版本

使用 Conda Forge 频道安装非官方 PyTorch 构建版本 在 AI 开发日益复杂的今天,一个看似简单的 pip install torch 命令背后,可能隐藏着硬件不兼容、依赖冲突或功能缺失的陷阱。尤其是在面对非主流 GPU 架构(如 AMD ROCm)、定制化…

作者头像 李华
网站建设 2026/4/18 5:34:51

基于Miniconda-Python3.10的可复现AI实验环境构建方法

基于Miniconda-Python3.10的可复现AI实验环境构建方法 在人工智能项目开发中,一个看似简单却频繁困扰开发者的问题是:为什么代码在同事的机器上跑不通?明明用的是同一份代码、同一个模型,结果却大相径庭——有的训练收敛&#xff…

作者头像 李华
网站建设 2026/4/18 7:38:36

使用Miniconda-Python3.10构建可持续集成的AI开发体系

使用Miniconda-Python3.10构建可持续集成的AI开发体系 在现代人工智能研发中,一个常见的尴尬场景是:你的模型在本地完美运行,但在同事的机器上却报错“ModuleNotFoundError”,或者CI流水线突然失败,仅仅因为某个依赖包…

作者头像 李华