java - Eclipse 关于 SortedMap 未重新声明 equals() 和 hashCode() 的警告

标签 java eclipse equals hashcode sortedmap

我有一个 Java POJO 类,在我的项目中使用它来从 JSON 进行 Jackson 反序列化。该类具有各种成员,但要考虑的重要成员是 java.util.SortedMap 类型。 。我想将 equals()hashCode() 添加到此类中,以便我可以相互比较这些类的实例。因此,我使用Eclipse的源代码生成工具来创建这两个方法。我从 IDE 收到以下警告消息:

The field type 'java.util.SortedMap' does not redeclare equals() and hashCode() - the resulting code may not work correctly.

请注意,我尝试为其创建 equals()hashCode() 的 POJO 对象确实具有不同 java.util 的成员> 接口(interface),如 ListMap,但没有关于缺少 equals()hashCode() 这两个接口(interface)。

我猜问题的一部分是我不确定为什么 SortedMap Jackson 的实现会将 JSON 反序列化成。我的类路径中有许多不同的 SortedMap 接口(interface)实现,其中一些确实覆盖了 equals()hashCode(),但它仍然是不可能(?)知道 jackson 是否会选择这些实现之一。

这条警告消息是我需要担心的吗?有人知道这个问题的解决方法吗?

旁白:我不想在这个项目中使用 Lombok。


更新

为 Eclipse 提交了以下错误:https://bugs.eclipse.org/bugs/show_bug.cgi?id=422184

最佳答案

您不会收到有关 ListMap 的警告,因为这些接口(interface)确实声明了 equals()hashCode() 方法。

由于 SortedMap 扩展了 Map 接口(interface),该接口(interface)确实具有方法并且仍然适用于 SortedMap 我认为一切都应该有效。

关于java - Eclipse 关于 SortedMap 未重新声明 equals() 和 hashCode() 的警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20102111/

相关文章:

.NET 中 System.Action 的 Java 等价物

java - Eclipse 匿名类折叠

java - 是否有 Java 实用程序可以对两个对象进行深入比较?

java - scala:重写基本类型的等于

java - Selenium GRID 测试执行

java - 如果在外部类的方法中声明了内部类,如何初始化内部类的实例?

java - 带有 xulrunner 3.6.28 x86 的 SWT x64

c - 在 Eclipse 中构建项目时出现问题

java - 如何在 Android 上执行假 DPAD 点击?

java - HashMap 和 SortedMap 中 equals() 的复杂性