KotlinNullPointerException 和 Java 的 NullPointerException 有什么区别

Mat*_*tej 5 nullpointerexception kotlin

由于 Kotlin 不允许隐式空值/变量,因此KotlinNullPointerException引入以明确表示NPE!!? 这就是这个孩子班的唯一目的NullPointerException吗?

Ily*_*lya 2

从版本 1.3 开始,KotlinKotlinNullPointerException仅在运算符检查失败的情况下抛出异常!!。这将其与其他NullPointerException可能抛出的情况区分开来,例如,在类构造期间访问未初始化的成员时。

但请注意,计划在 Kotlin 1.4 中删除这种区别:所有此类失败的检查都将抛出 just NullPointerException,因此其继承者KotlinNullPointerException将变得不被使用。您可以在 1.3.50 版本发布的公告博客文章中阅读更多相关信息:https://blog.jetbrains.com/kotlin/2019/08/kotlin-1-3-50-released/