lombok应用

lombok的方面之处就不多说了,这里列一下使用中遇到的一些问题。

@Builder继承

@Builder无法继承。所以当我们同时有父类、子类,无法都使用@Builder。

解决方案:父类不用@Builder,子类构造函数上加@Builder

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@AllArgsConstructor
@NoArgsConstructor
public class Father {

private String fatherName;
}

public class Children {

private String childName;

@Builder
public Children(String fatherName, String childName) {
super(fatherName);
this.childName = childName;
}
}

缺点:

  1. 父类无法使用builder();
  2. 子类的构造得是全参构造;

@Data继承

子类继承时,需加@EqualsAndHashCode(callSuper=true)