KotlinNullPointerException

KotlinNullPointerException

由于Kotlin不允许使用隐式null值/变量,是否引入KotlinNullPointerException来明确表示由NPE引起的!!?这是NullPointerException的子类的唯一目的吗?

最佳答案

从1.3版开始,Kotlin仅在KotlinNullPointerException运算符检查失败的情况下才抛出!!。这与其他可能引发NullPointerException的情况(例如,在类构造期间访问未初始化的成员)不同。

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

10-06 06:34