Springboot 注解EqualsAndHashCode详解
先看问题,如图所示
注解解释
@EqualsAndHashCode 作用与子类上
callSuper = true
,根据子类自身的字段值和从父类继承的字段值来生成hashcode,当两个子类对象比较时,只有子类对象的本身的字段值和继承父类的字段值都相同,equals方法的返回值是true。callSuper = false
,根据子类自身的字段值来生成hashcode, 当两个子类对象比较时,只有子类对象的本身的字段值相同,父类字段值可以不同,equals方法的返回值是true。
IDEA检查提示并快速修复
正在生成 equals/hashCode 实现,但即使此类未扩展 java.lang.Object,也不调用超类。如果这是有意为之,请在您的类型中添加 ‘(callSuper=false)’。
检查信息: 提供 Lombok 注解的一般检查。
点击后,快速修复添加注解
测试代码
package com.st; import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import org.junit.Test; /** * @author st * @date 2024/1/9 15:36 */ @Data @NoArgsConstructor @AllArgsConstructor class Animal { private String name; } @EqualsAndHashCode(callSuper = true) @Data @NoArgsConstructor @AllArgsConstructor class Cat extends Animal { private String age; public Cat(String name, String age) { super(name); this.age = age; } } public class TestAnnotation { @Test public void testCat() { Cat cat1 = new Cat("1", "1"); Cat cat2 = new Cat("2", "1"); System.out.println(cat1.equals(cat2)); } }
到此这篇关于Springboot 注解EqualsAndHashCode的文章就介绍到这了,更多相关Springboot 注解EqualsAndHashCode内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
全网最全最细的jmeter接口测试教程以及接口测试流程(入门教程)
本文主要介绍了全网最全最细的jmeter接口测试教程以及接口测试流程,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2021-11-11一文快速了解spring boot中的@idempotent注解
idempotence注解是RESTful API设计中一个重要的概念,它可以保证操作的可靠性和一致性,下面这篇文章主要给大家介绍了关于spring boot中@idempotent注解的相关资料,需要的朋友可以参考下2024-01-01Java解析zip文件,并识别压缩包里面的文件转换成可操作的IO流方式
这篇文章主要介绍了Java解析zip文件,并识别压缩包里面的文件转换成可操作的IO流方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-08-08
最新评论