我有两个类,父类需要在构建时从子类中获取一些属性。是否有一种方式可以使用lombok builders来支持这一点?
Parent.java
import lombok.Builder;
import lombok.Getter;
import lombok.experimental.SuperBuilder;
@Getter
@SuperBuilder
public abstract class Parent {
@Builder.Default
private String requestType = getRequestTypeFromSubclass();
abstract String getRequestTypeFromSubclass();
}
Child.java
import lombok.Builder;
import lombok.Getter;
import lombok.experimental.SuperBuilder;
import java.util.List;
@Getter
@SuperBuilder
public class Child extends Parent {
@Override
String getRequestTypeFromSubclass() {
return "Child1";
}
}
上述代码在编译时出现错误,错误信息如下:
非静态方法getRequestType()无法从静态上下文@SuperBuilder引用。