إذا استعملت getClass، فإنك ستحصلين على true فقط في حالة كان otherObject من فئة Employee، أما إذا كان من فئة ترث من Employee أو أي فئة أخرى ستحصلين على false.
جربي هذا المثال ولاحظي النتيجة
class A {
public void whoAreYou() {
System.out.println("I am class A.");
}
}
class B extends A {
@Override
public void whoAreYou() {
System.out.println("I am class B.");
}
}
public class NewClass2 {
public static void main(String[] args) {
A a1 = new A();
A a2 = new A();
B b = new B();
System.out.println(a1.getClass() == a2.getClass());
System.out.println(a1.getClass() == b.getClass());
}
}