Java基础之 instanceof的用法

Java instanceof用于判断一个对象实例的真实类型。

使用格式:
对象实例名 instanceof 类名

例如:
对象名 instanceof 类名

结果输出为布尔值:true或false,为true时,说明判断的实例的类型是对应判断类的类型相同,或是判断类的子类。

我们看demo:

/**
 * Java instanceof 使用
 */
public class TestInstanceof {

    public static void main(String[] args) {
        INOPerson ip = new INOPerson();
        INOSubPerson isp = new INOSubPerson();
        INOPerson isp2 = new INOSubPerson();


        System.out.println(ip instanceof INOPerson);
        //true

        System.out.println(ip instanceof INOSubPerson);
        //false

        System.out.println(isp instanceof INOPerson);
        //true

        System.out.println(isp instanceof INOSubPerson);
        //true

        System.out.println(isp2 instanceof INOPerson);
        //true

        System.out.println(isp2 instanceof INOSubPerson);
        //true

    }
}

class INOPerson {
    private String name;
    private int age;
}

class INOSubPerson extends INOPerson {

}