我正在尝试实现超过3个级别的构建器层次结构。
类似的东西:
public abstract class ElementBuilder {
protected String name;
public ElementBuilder setName(String name) {
this.name = name;
return this;
}
}
public abstract class OperationBuilder extends ElementBuilder {
protected String attribute;
public OperationBuilder setName(String attribute) {
this.attribute = attribute;
return this;
}
}
public abstract class FilterBuilder extends OperationBuilder {
....
}
问题在于,当我调用超类的操作时,它返回该类的构建器。我不想在每个子节点中复制setter方法,因为它可能包含一些逻辑。
我尝试使用泛型但我无法以干净的方式实现它。