Java中,instanceof运算符的前一个操作符是一个引用变量,后一个操作数通常是一个类(可以是接口),用于判断前面的对象是否是后面的类,或者其子类、实现类的实例。如
果是返回true,否则返回false。
也就是说:
使用instanceof关键字做判断时, instanceof 操作符的左右操作数必须有继承或实现关系
下面我们用继承树来判断instanceof的返回值:
1 packageinstanceofTest;2
3 /**
4 *@authorzsh5 * @company wlgzs6 * @create 2019-03-21 19:557 * @Describe 继承树来判断instanceof的返回值8 */
9 interfaceMan{}10 class Person1 implementsMan{}11 class Student extendsPerson1{}12 class Postgraduate extendsStudent {}13 classAnimal {}14 public classMain1 {15 public static voidmain(String[] args) {16 System.out.println("Student 的对象是谁的实例?");17 instanceofTest(newStudent());18 System.out.println("Animal 的对象是谁的实例?");19 instanceofTest(newAnimal());20 System.out.println("Postgraduate 的对象是谁的实例?");21 instanceofTest(newPostgraduate());22 //一个类的实例是这个类本身的实例&