Lombok对于重写hashCode的算法真的是很经典,但是目前而言有一个令人难以注意到的细节。在继承关系中,父类的hashCode针对父类的所有属性进行运算,而子类的hashCode却只是针对子类才有的属性进行运算,立此贴提醒自己。
目前重写hashCode的注解有@Data,@EqualsAndHashCode
本文探讨了使用Lombok库中的@Data和@EqualsAndHashCode注解来自动重写hashCode方法时的一个微妙细节:即在继承关系中,父类与子类hashCode计算的区别。父类的hashCode基于所有属性计算,而子类只基于自身新增属性计算。
Lombok对于重写hashCode的算法真的是很经典,但是目前而言有一个令人难以注意到的细节。在继承关系中,父类的hashCode针对父类的所有属性进行运算,而子类的hashCode却只是针对子类才有的属性进行运算,立此贴提醒自己。
目前重写hashCode的注解有@Data,@EqualsAndHashCode
7180

被折叠的 条评论
为什么被折叠?