我在这里发布了大量有问题的代码。我正在尝试同时比较两种对象类型及其值。
public boolean equals(Object val1)
{
if (!(val1 instanceof ParentClass))
return false;
ParentClass val2 = (ParentClass) val1;
if ((val1.getClass().equals(val2.getClass())) && val1.getVal().equals(val2.getVal()));
System.out.println("Both objects belong to same class and the values are equal too!!");
return true;
}
我的父类中有这个块,并且在上述 IF 条件下出现错误(方法 getVal() 未定义对象类型)。您能否建议我一个解决方案,以便我可以一次性比较对象类型和值。实际上 ParentClass 是我的父类,我有几个派生类,我正在使用 Object 的 equals 方法来比较基类和派生对象的类型。另外,如何使用 Object 的 hashCode 验证我的 equals?请让我知道你的建议。谢谢!