JAVA SE学习小结

1.相等与同一

如何两个对象具有相同的类型及相同的属性值,则称这两个对象相等(equal);如果两个引用变量指向的是同一个对象,则称这两个变量(对象)同一(identical)。如果两个对象同一,则两个对象肯定相等;反之,如果两个对象相等,则不一定同一。当使用通常的等号“==”来判断这两个对象是否"相等"时,实际上判断的是这两个对象是否同一。

Object类中的equals()方法的功能:比较接受者对象与参数对象是否是同一个对象,即对象的地址是否相同。因此,Object类中的equals()方法判断的是两个对象是否同一,而不是判断两个对象的各个属性域的值是否相等。

要判断两个对象的各个属性域的值是否相同,则不能使用从Object类继承来的equals()方法,而需要在类声明中对equals()方法重写。
比较两个字符串的值是否相等不能用等号“==”,需要使用equals方法。在String类中已对equals方法进行了重写,使其比较两个字符串的值是否相等。

你可能感兴趣的:(Java)