《java基础知识》Java instanceof 运算符
Posted jssj
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《java基础知识》Java instanceof 运算符相关的知识,希望对你有一定的参考价值。
java多态性带来一个问题,就是如何判断一个变量所实际引用对象的类型。这里java帮我们引入了 instanceof 运算符。
instanceof运算符用来判断一个变量的所引用对象的实际类型,注意是它引用的对象类型,不是变了类型。
请看下面的代码:
public class People
public class Teacher extends People
public class President extends Teacher
public final class Demo public static void main(String[] args) People obj = new People(); if(obj instanceof Object) System.out.println("我是一个对象"); if(obj instanceof People) System.out.println("我是一个人"); if(obj instanceof Teacher) System.out.println("我是一名教师"); if(obj instanceof President) System.out.println("我是一名校长"); System.out.println(" --------------------------------------------- "); obj = new Teacher(); if(obj instanceof Object) System.out.println("我是一个对象"); if(obj instanceof People) System.out.println("我是一个人"); if(obj instanceof Teacher) System.out.println("我是一名教师"); if(obj instanceof President) System.out.println("我是一名校长");
运行结果:
可以看出,如果变量引用的是当前类或它的子类的实例,instanceof 返回 true ,否则返回false。
以上是关于《java基础知识》Java instanceof 运算符的主要内容,如果未能解决你的问题,请参考以下文章