使用方法
class Dog{ }
class Cat extends Dog{ }
public class Test{
public static void main(String[] args) {
Dog dog=new Dog();
Cat cat=new Cat();
System.out.println(cat instanceof Dog); //A
System.out.println(dog instanceof Cat); //B
}
}
结果

使用上转型的时候,对象和子类的instanceof,依然是true;
稍做修改
class Dog{ }
class Cat { }
public class Test{
public static void main(String[] args) {
Dog dog=new Dog();
Cat cat=new Cat();
System.out.println(cat instanceof Dog); //A
System.out.println(dog instanceof Cat); //B
}
}
结果

原因:只有对象和类存在父子关系才能使用isntanceof。
这篇博客讨论了Java中类的继承和instanceof关键字的应用。通过示例代码展示了当子类对象引用指向父类实例时,如何判断对象是否为特定类的实例。博客指出,只有当对象和类之间存在父子关系时,才能使用instanceof进行类型检查。
176

被折叠的 条评论
为什么被折叠?



