我知道要在Java中创建一个唯一的对象,我必须实现hashcode()
和equals()
方法。
但是当我们从一个类创建两个对象时,为什么这两个对象不同呢?
public class ClassA {
public static void main(String []arg) {
ClassA classa = new ClassA();
ClassA classb = new ClassA();
//here classa and classb are not equal. Why?
if(classa == classb) //returns false
}
}
答案 0 :(得分:1)
==
运算符检查对象的内存地址。 classa
和classb
是不同的对象,它们具有不同的内存地址,因此classa==classb
返回false。