0
点赞
收藏
分享

微信扫一扫

@Data注解父子类继承的问题

萧让听雪 2022-03-12 阅读 52

父类子类都使用@Data注解的时候会导致:equals方法在父类中重写equals,可能不是对称的。问题。

解决方案:子类的注解添加以下

@Data
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)

使用@Data时默认@equalsandhashcode的状态为callsuper=false

@equalsandhashcode(callsuper=false)表达为在对象比较时不会考虑父类中的成员,仅仅比较子类中的属性就判断是否相同

@equalsandhashcode(callsuper=true)在比较时会考虑父类中的成员,通过父类和子类中的属性一起判断是否相同

举报

相关推荐

0 条评论