lombok注解@EqualsAndHashCode用处

没加这个注解时,@Data会出现提示

Generating equals/hashCode implementation but without a call to superclass, even though this class does not extend java.lang.Object. If this is intentional, add ‘(callSuper=false)’ to your type.

机翻一下:

生成equals/hashCode实现,但不调用超类,即使该类没有扩展java.lang.Object。如果这是故意的,添加’ (callSuper=false) '到你的类型。

意思是:
你这个bean对象是个继承对象,并且不是继承公共类Object,所以我这个lombok帮你生成equals/hashCode方法时,想明确你的态度,到底要不要把你这个bean对象继承的父类的属性值也添加进equals/hashCode方法内。

如果不要添加父类的属性值,就@EqualsAndHashCode(callSuper = false)
如果要添加父类的属性值,就@EqualsAndHashCode(callSuper = true)

而即便是不加@EqualsAndHashCode(callSuper = false)@Data的默认值也是false,也就是不添加父类的属性、

但lombok就是想提醒你我这个值默认是false,这大鹏的瓜你要不要吧?不要也得给我加上false!

你可能感兴趣的:(java注解,lombok,注解,callSuper)