Instancia de Java de uso específico
Palabra clave
En primer lugar: ¡instanceof es una palabra clave reservada de la palabra clave Java
!
Palabras clave!
Palabras clave!
efecto
Su función específica es probar si el objeto de la izquierda es un objeto de instancia creado por la clase derecha o una subclase de esta clase (o la relación entre la interfaz y la implementación) .
uso
¡Nota! ! !
Cualquiera del tipo de declaración sobre el derecho y la clase de la izquierda debe ser la misma rama del árbol de herencia o tener una herencia (aplicación) relación con la clase de prueba
Asumiendo una relación de clase:
Object o = new Student(); // 主要看这个对象是什么类型与实例化的类名
// instanceof关键字可以判断左边对象是否是右边类或者子类的一个实例
System.out.println(o instanceof Student); // o 是Student类的一个实例对象 所以判断右边类跟student有无关系 以及显示声明有无关系
System.out.println(o instanceof Person); // true
System.out.println(o instanceof Object); // true
System.out.println(o instanceof String); // false
System.out.println(o instanceof Teacher); // 无关系
System.out.println("========================");
Person person = new Student();
System.out.println(person instanceof Person); // true
System.out.println(person instanceof Object); // true
// System.out.println(person instanceof String); // 编译错误,Person和String没有继承关系
System.out.println(person instanceof Teacher); // 无关系