我刚刚阅读了这个问题并偶然发现了以下引用:
Scala 将
==
其视为在 class 中定义如下Any
:final def == (that: Any): Boolean = if (null eq this) (null eq that) else (this equals that)
这(null eq this)
部分让我想知道:实际上是否可以在空指针上调用方法?可以this
在null
Scala 中吗?
null
是Null
类的唯一实例,它是一个有效的对象。Null
是所有引用类型的子类型。
我对 Scala 还是很陌生,但我认为这是可能的唯一方法是因为“null”本身是 Null 的一个实例,而不是像 Java 中的“null”这样的特殊值。
http://blog.sanaulla.info/2009/07/12/nothingness/
这篇文章帮助我更好地理解了这一点。