Kotlin 1.4的新特性有哪些

发布时间:2021-10-28 16:21:22 作者:iii
来源:亿速云 阅读:139

这篇文章主要讲解了“Kotlin 1.4的新特性有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Kotlin 1.4的新特性有哪些”吧!

新语言特性

Kotlin 1.4 中引入的新语言特性改善了编写 Kotlin 代码的 "人机工程学",例如:

Kotlin 接口的 SAM 转换

过去,只有 Java 编程语言中定义的功能接口 (即只有一个单一抽象方法 - SAM) 受益于 Kotlin 中的速记语法:

executor.execute { println("This is shorthand for passing in a Runnable") }

现在,Kotlin 1.4 可以将 Kotlin 接口标记为功能接口,并通过添加 fun 关键字让它们以类似方式工作:

fun interface Transformer<T, U> {    fun transform(x: T): U } val length = Transformer {    x: String -> x.length }

Kotlin 1.4 版本说明页面介绍了有关新语言特性的更多信息,如: 混合命名和位置参数、尾部逗号、可调用引用改进,以及在循环中的 when 内部使用  break和 continue。

显式 API 模式

另外一个新特性是显式 API 模式,面向 Kotlin 的库作者。

该模式强制执行 Kotlin 的某些语言属性,这些属性通常为可选,例如指定可见性修饰符,以及任何公共声明的显式键入,防止设计库的公共 API  时出错。官方文档说明了如何启用显式 API 模式并开始使用这些附加检查。

编译器的改进

上述语言特性是 Kotlin 1.4 中密切贴合开发者的一部分改动,其他大部分工作是以提高 Kotlin 编译器的整体质量和性能为主。

现在,所有开发者都可以利用的优势之一是更强大的新类型推断算法  (默认启用),它可以在更多用例中自动推理类型,即使在复杂的场景下也支持智能转换,帮助开发者提高工作效率。

除了类型推断算法,Kotlin 1.4 还为 Kotlin/JVM 和 Kotlin/JS 带来了全新的编译器后端 (Alpha 稳定阶段,可选),用  IR 编译器生成代码并用于 Kotlin/Native 后端。

Jetpack Compose 需要 Kotlin/JVM IR 后端。Google 工程师正在与 JetBrains 合作,希望将其打造成默认的 JVM  编译器后端。

因此,即使您当前不使用 Jetpack Compose 进行开发,我们同样建议您尝试全新 alpha 版 Kotlin/JVM  后端,如果在使用中有任何问题和功能请求请提交到问题跟踪器。

在 Gradle 构建脚本中指定额外编译器选项即可启用新的 JVM IR 后端:

kotlinOptions.useIR = true

立即体验 Kotlin 1.4!

项目和 IDE 更新到 Kotlin 1.4 需要完成两个步骤。

首先,确保您使用最新版 Android Studio,以最大限度地提高性能优势以及与最新 Kotlin 插件的兼容性。当与 IDE 版本兼容的  Kotlin 1.4.0 插件可用时,Android Studio 将提示您,或者您也可以转到 Preferences | Plugins  手动触发更新。

启用插件后,您可以更新 build.gradle 脚本中的 Kotlin Gradle 插件版本,将应用项目升级以使用 Kotlin  1.4。根据插件的管理方式,您必须在顶层项目的buildscript 块中更新版本:

  1. buildscript { 

  2.     dependencies { 

  3.         classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.0" 

  4.     } 

  5. }

或在模块级别的 build.gradle 文件的 plugins 块中更改版本号:

plugins {     id 'org.jetbrains.kotlin.android' version '1.4.0' }

感谢各位的阅读,以上就是“Kotlin 1.4的新特性有哪些”的内容了,经过本文的学习后,相信大家对Kotlin 1.4的新特性有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读:
  1. kotlin语法特性有哪些
  2. Kotlin接口与Java8新特性接口的示例分析

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

kotlin

上一篇:Java开发编程的坑有哪些

下一篇:Mysql数据分组排名实现的示例分析

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》