2017-11-18 6 views
-1

私は以下のプログラムを書いたが、出力を理解できない。Javaのinstanceofの意味

public class Test { 

    public static void main(String[] args) { 
     int[] a = new int[5]; 
     System.out.println(a instanceof Object); 
    } 

} 
+3

まあ、配列はJavaのオブジェクトです。それで、それは真実を出す。 –

+1

ご清聴ありがとうございます。さて、私はinstanceof演算子の概念を理解しています。 –

答えて

0

配列はプリミティブの配列であってもオブジェクトなので、プログラムはtrueを出力します。

0

Trueを出力します。 Instanceofは、左側がinstanceofの右側のクラスから来たものかどうかをチェックします。すべてのクラスはJavaのObjectクラスのサブクラスですので、ここではtrueを評価します。

0

クラスの割り当てを調べることに加えて、instanceofはまた、左側のスーパークラスもチェックします。

あなたのケースでは、配列のオブジェクトはオブジェクトのインスタンスです