关于 java 中的 Equals with Objects 和 类

Regarding Equals in java with Objects and Classes

让我们说 java 我有一个 Class A 和一个扩展 A 的 Class B。

注意:类A 和 B 没有 equals 方法!

我愿意:

A a = new B();
B b = new B();
a.equals(b);

结果是假的。我想当我们做 equals 时它会动态地绑定到 a 和 b 这将使它成为现实。或者是因为在编译时它查看 a 并假设 equals 是 equals(A) 并且因为它的 a B for B b = new B();它说假的?还是我两方面都错了?

因为你没有覆盖 equals 那么它将使用 Object 的方法

如果您查看对象的源代码

 @param   obj   the reference object with which to compare.
 public boolean equals(Object obj) {
    return (this == obj);
 }

显然 ab 有不同的引用,因此 false