История изменений
Исправление I60R, (текущая версия) :
Билдер придумали чтобы не писать много конструкторов на всякий случай жизни, например
class A {
public A () { ... }
public A (A) { ... }
public A (B) { ... }
public A (C) { ... }
public A (A, B) { ... }
public A (A, C) { ... }
public A (A, B, C) { ... }
}
A a = new A.Builder().build();
A with_A = new A.Builder().with_A(A).build();
A with_A_and_B = new A.Builder().with_A(A).with_B(B).build();
Исходная версия I60R, :
Билдер придумали чтобы не писать много конструкторов на всякий случай жизни, например
class A {
public A () { ... }
public A (A) { ... }
public A (B) { ... }
public A (C) { ... }
public A (A, B) { ... }
public A (A, C) { ... }
public A (A, B, C) { ... }
}
A a = new A.Builder().build();
A with_A = new A.Builder().with_A(A).build();
A with_A_and_B = new A.Builder().with(A).with(B).build();