我们知道==比较参考文献并equals()比较内容.但在检查Object类中的equals()实现后,我感到很困惑.实施是,
public boolean equals(Object obj) {
return (this == obj);
}
Run Code Online (Sandbox Code Playgroud)
正如你看到的实现.equals内部呼叫==运营商.然后它有何不同?
它们的区别在于你可以覆盖equals(),但不能==以任何方式覆盖它们.
因此,equals()如果类作者决定如此,则可以检查两个对象的逻辑相等性,==并且总是比较引用,因此仅当两个操作数是相同的对象(或相同的原始值)时才是真的.
| 归档时间: |
|
| 查看次数: |
264 次 |
| 最近记录: |