我使用建筑商模式(如Joshua Bloch s 有效爪哇
所解释的)做一些事情,其中特别令人烦恼的重复:
public class Foo {
private String name;
private int age;
public static class Builder implements IBuilder {
private String name;
private int age;
Builder name(String value) {
name = value;
return this;
}
Builder age(int value) {
age = value;
return this;
}
Foo build() {
return new Foo(this);
}
}
private Foo(Builder builder) {
name = builder.name;
age = builder.age;
}
}
它很小,但很烦人。 我必须在每类中声明变量。 我尝试用字段创建一个类, 并扩展该类, 但我有错误 : 中有私人访问 。
是否有办法做到这一点,而不公布变数?