在以下情况下,我自动生成了四个类(在JAR中):
Class A{
B bEl = ...;
}
Class B{
C cEl = ...;
}
Class C{
D dEl = ...;
}
Class E{
E eEl=...;
}
设置这些对象非常麻烦且容易出错。因此,我想知道是否有更好的方法来自动构建构建器。我知道Lombok,但无法编辑该代码,也无法添加@Builder批注。
有什么建议吗?
在以下情况下,我自动生成了四个类(在JAR中):
Class A{
B bEl = ...;
}
Class B{
C cEl = ...;
}
Class C{
D dEl = ...;
}
Class E{
E eEl=...;
}
设置这些对象非常麻烦且容易出错。因此,我想知道是否有更好的方法来自动构建构建器。我知道Lombok,但无法编辑该代码,也无法添加@Builder批注。
有什么建议吗?
如果您不允许更改现有的类,则可以扩展它们:
public class Existing {
String a;
String b;
public Test(String a,String b) {
this.a = a;
this.b = b;
}
public String getA() {
return a;
}
public void setA(String a) {
this.a = a;
}
public String getB() {
return b;
}
public void setB(String b) {
this.b = b;
}
}
public class ExistingBuilder extends Existing {
@Builder
public ExistingBuilder(String a,String b) {
super(a,b);
// in case super class doesn't have all arguments constructor just call setters
// setA(a);
// setB(b);
}
}
因此,您可以看到它是可行的,但是超类应该具有getters / setters或所有args构造函数。