Java 中 instanceof 的含义
Meaning of instanceof in Java
我写了下面的程序,但我无法理解输出。
public class Test {
public static void main(String[] args) {
int[] a = new int[5];
System.out.println(a instanceof Object);
}
}
它会输出True。 instanceof检查左边的是否来自instanceof右边的class。每个 class 都是 Java 中对象 class 的子 class,所以这里它的计算结果为真。
数组,即使它们是基元数组,也是对象,所以程序输出 true
。
除了检查 class 赋值外,instanceof 还会检查左侧的超类。
在你的例子中,Array extends Object 是一个 instanceof Object
我写了下面的程序,但我无法理解输出。
public class Test {
public static void main(String[] args) {
int[] a = new int[5];
System.out.println(a instanceof Object);
}
}
它会输出True。 instanceof检查左边的是否来自instanceof右边的class。每个 class 都是 Java 中对象 class 的子 class,所以这里它的计算结果为真。
数组,即使它们是基元数组,也是对象,所以程序输出 true
。
除了检查 class 赋值外,instanceof 还会检查左侧的超类。
在你的例子中,Array extends Object 是一个 instanceof Object