【发布时间】:2012-04-09 11:41:18
【问题描述】:
我刚刚阅读了this question 并偶然发现了以下引用:
Scala 将
==视为在类Any中定义如下:final def == (that: Any): Boolean = if (null eq this) (null eq that) else (this equals that)
(null eq this) 部分让我想知道:真的可以在空指针上调用方法吗? this 可以在 Scala 中成为 null 吗?
【问题讨论】:
-
您将抽象与实现混淆了。抽象地,可以调用
null上的方法,例如==。显然,JVM 上的实现不会调用空指针上的方法。