Eclipse の第一人者によって投稿された Eclipse サイトでいくつかのコードを見つけました。
String something = null ;
if (equals(null)) {
System.out.println("b'");
}
コンパイルします。しかし、実行されていないようです。
これはどのようなJavaコードですか?
Eclipse の第一人者によって投稿された Eclipse サイトでいくつかのコードを見つけました。
String something = null ;
if (equals(null)) {
System.out.println("b'");
}
コンパイルします。しかし、実行されていないようです。
これはどのようなJavaコードですか?
実行されますが、明らかではない可能性があります。次のコードを試してください。
if (equals(null)) {
System.out.println("b");
}
else {
System.out.println("c");
}
このコードを使用するcと、標準出力に文字が表示されるはずです。
equals(Object obj)Objectクラスで宣言されたメソッドです。
equals(someObject)と同等this.equals(someObject)です。
equals(obj)の API コントラクトは次のとおりです。
" object が引数と同じtrue場合、そうでない場合は false.thisobj ."
あなたのコード例では、objはthisオブジェクトではなくnull. したがって、if句は に評価されるfalseため、実行中の仮想マシンは評価されませんSystem.out.println("b");。