Errors 入门

有帮助的 NullPointerException

JVM 自动告诉您哪个变量为 null。

✕ Java 8
// Old NPE message:
// "NullPointerException"
// at MyApp.main(MyApp.java:42)
// Which variable was null?!
✓ Java 14+
// Modern NPE message:
// Cannot invoke "String.length()"
// because "user.address().city()"
// is null
// Exact variable identified!
发现此代码有问题? 告诉我们。
🔍

精确变量

消息在链中指出 null 变量的名称。

更快调试

立即知道是哪个链中的引用为 null。

🆓

零代码更改

JVM 自动生成消息,无需代码更改。

旧方式
晦涩的 NPE
现代方式
详细的 NPE
自 JDK
14
难度
入门
有帮助的 NullPointerException
可用

自 JDK 14 起广泛可用(2020 年 3 月)

有帮助的 NPE 描述哪个表达式为 null 以及操作失败的原因。不再需要在链式方法调用中猜测哪个引用为 null。

分享 𝕏 🦋 in