@EqualsAndHashCode(callSuper = false) 解释

当我们的pojo使用@Data注解时,@Data默认包含的是:@EqualsAndHashCode(callSuper = false),但是我们的pojo有继承父类,我们可能需要重新定义这个注解为:@EqualsAndHashCode(callSuper = true)

两者区别:
@EqualsAndHashCode(callSuper = false):当我们用于对象属性比较的时候:只比较子类的属性,也就是讲:如果两个对象子类属性一致,父类属性不一致,在比较时候出现相同的结果,也就是返回的true。

@EqualsAndHashCode(callSuper = true):如果加了这个注解,则相反,进行对象属性比较时,子类和父类一同进行比较,也就是:如果两个对象子类属性一致,父类不一致,返回的是false;只有子类和继承类的属性都一致时,才会返回true

posted @   intTom  阅读(720)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示