一、常用注解
1.@Data
该注解 包含了如下5个:
@Getter 所有属性的get方法
@Setter 所有属性的set方法
@RequiredArgsConstructor 有参构造函数
@ToString toString方法
@EqualsAndHashCode equals 和 hashCode方法
PS:@EqualsAndHashCode生成的方法只用到了当前类(比如叫Son)的全部属性,他不会去用父类(比如叫Father)的属性,所以导致了子类属性相同,父类属性不同的Son对象,比较时居然是返回相等的结果。
解决方法:
(1)@EqualsAndHashCode(callSuper = true)来解决
(2)自己重写 equal和hashCode方法