반응형
생성자와 빌더 모두 생성 시점에 값을 채워주는 역할은 똑같다.
다만, 생성자의 경우 채워야 할 필드가 무엇인지 명확히 지정할 수가 없다.
다음과 같은 상황에서 example(b,a)처럼 a와 b의 위치를 변경해도 코드를 실행하기 전까지는 문제를 찾을 수가 없다.
⬇️
public Example(String a, String b) {
this.a = a;
this.b = b;
}
빌더는 어느 필드에 어떤 값을 채워야할지가 명확하다.
Example.builder()
.a(a)
.b(b)
.build();
반응형