我有以下课程:
@SuperBuilder(toBuilder = true)
public abstract class Parent {
//...
}
@SuperBuilder(toBuilder = true)
public class Child extends Parent {
//...
}
@SuperBuilder(toBuilder = true)
public class Child2 extends Parent {
//...
}
为什么我无法在抽象类(toBuilder()
)的实例上调用Parent
,如以下代码所示?
public copy(Parent parent) {
parent.toBuilder().build();
}
[可能是因为Lombok无法保证Parent
的每个子类也都标记为@SuperBuilder(toBuilder=true)
,如果这样,Lombok无法调用该实例的toBuilder
;
实际上,作为Hossein Nasr already explained,Lombok无法知道是否存在不具有toBuilder=true
的子类。