最近在了解《Effective Java》中提到的eques方法的限制时,有讲到igetClass()可以替代nstanceof来判断是否是同一个子类。于是了解了一下两者的区别。
简单的说,它们的区别是,同样是判断子类和父类是否相等,子类 instanceof 父类 为true
子类.getClass() == 父类.getClass() 为false.
因为这一点简单的差别,在实现子类的equals()方法时,要多加注意
最近在了解《Effective Java》中提到的eques方法的限制时,有讲到igetClass()可以替代nstanceof来判断是否是同一个子类。于是了解了一下两者的区别。
简单的说,它们的区别是,同样是判断子类和父类是否相等,子类 instanceof 父类 为true
子类.getClass() == 父类.getClass() 为false.
因为这一点简单的差别,在实现子类的equals()方法时,要多加注意