instanceof是一个二元操作符,类似于== > <等关键字,作用是用来检测一个对象是否是某个构造函数的实例对象,返回类型为boolean
测试用例
public class instanceofTest {
public static void main(String[] args) {
Object testObject = new Tests();
displayObjectClass(testObject);
}
public static void displayObjectClass(Object o) {
if(o instanceof Tests)
System.out.println("对象是 learn.Class.Tests类的实例");
else
System.out.println("对象是 " + o.getClass() + " 类的实例");
}
}
测试结果
所继承类
package learn.Class;
import java.util.Objects;
public class Tests extends Object{
public String a;
public Tests(){
}
public Tests(String a) {
this.a = a;
}
public String getA() {
return a;
}
public void setA(String a) {
this.a = a;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Tests tests = (Tests) o;
return Objects.equals(a, tests.a);
}
@Override
public int hashCode() {
return Objects.hash(a);
}
}