このコードをコンパイルして実行すると:
public class Testing {
public static void main(String... args) {
Object obj = null;
if (obj instanceof Object) {
System.out.println("returned true");
} else {
System.out.println("returned false");
}
System.out.println(" " + obj instanceof Object);
}
}
コマンドラインでこれを取得します:
C:\Users\xxxxxx\Desktop>java Testing
returned false
true
"null instanceof someType" は常に false を返すべきではありませんか?