java中instanceof和getClass()的区别分析

it2022-05-07  4

class A { }  class B extends A { }  Object o1 = new A();  Object o2 = new B();  o1 instanceof A => true  o1 instanceof B => false  o2 instanceof A => true // <================ HERE  o2 instanceof B => true  o1.getClass().equals(A.class) => true  o1.getClass().equals(B.class) => false  o2.getClass().equals(A.class) => false // <===============HERE  o2.getClass().equals(B.class) => true 

getClass() will be useful when you want to make sure your instance is NOT a subclass of the class you are comparing with.

转载于:https://www.cnblogs.com/wuxiang/p/5278169.html

相关资源:垃圾分类数据集及代码

最新回复(0)