JAVA中instanceof的作用和用法

时间:2023-01-30 17:39:24

instanceof 运算符作用

  • 用来在运行时指出对象是否是特定类的一个实例。
  • instance of通过返回一个布尔值来指出,这个对象是否是这个特定类或它的子类的一个实例。

用法

boolean result = object instanceof class
参数

  • result:布尔类型。
  • object:任意对象表达式。
  • class:任意已定义的对象类。

说明
如果 object 是 class 的一个实例,则返回 true。如果 object 不是指定类的一个实例,或者 object 是 null,则返回 false。


测试例子如下

interface A{}
class B implements A{
}
class C extends B {
}
A a=null;
B b=null;
boolean res;
//a instanceof A: false
//b instanceof B: false
a=new B();
b=new B();
//a instanceof A: true
//a instanceof B: true
//b instanceof A: true
//b instanceof B: true
B b2=(C)new C();
//b2 instanceof A: true
//b2 instanceof B: true
//b2 instanceof C: true

详见大神博客:java中instanceof用法