Builder, Java 2nd Edition 2.
, Builder, ( ) . build(). Builder () , . .
:
public class Foo {
public static class Builder {
public Foo build() {
return new Foo(this);
}
public Builder setId(int id) {
this.id = id;
return this;
}
private int id;
}
public static Builder builder() {
return new Builder();
}
private Foo(Builder builder) {
id = builder.id;
}
private final int id;
}
Foo, - :
Foo foo = Foo.builder()
.setId(id)
.build();
, :
Foo.Builder fooBuilder = Foo.builder();
...
fooBuilder.setId(id);
...
Foo foo = fooBuilder.build();
build() Builder.
, . API - .