7

この質問を読んだところ、次の引用に出くわしました。

Scala は==、 class で次のように定義されているかのように扱いますAny

final def == (that: Any): Boolean = 
  if (null eq this) (null eq that) else (this equals that)

その(null eq this)部分で私は疑問に思いました:ヌルポインターでメソッドを呼び出すことは実際に可能ですか? Scalaでできthisますか?null

4

3 に答える 3

8
于 2012-04-09T11:48:35.343 に答える
3

nullクラスの唯一のインスタンスでありNull、有効なオブジェクトです。Nullすべての参照型のサブタイプです。

于 2012-04-09T11:47:21.613 に答える
1

私は Scala にはかなり慣れていませんが、それが可能な唯一の方法は、「null」自体が Null のインスタンスであり、Java の「null」のような特別な値ではないという事実によるものです。

http://blog.sanaulla.info/2009/07/12/nothingness/

この記事は、私がこれをよりよく理解するのに役立ちました。

于 2012-04-09T11:48:44.547 に答える