Telescoping constructor 패턴은 필수인자를 받는 생성자를 정의하고, 선택적 인자를 받는 생성자들을 따로 추가하는 방식이다.
최종적으로 모든 선택적 인자들을 다 받는 생성자를 정의하면, 모든 생성자 정의가 끝나게 된다.
장점
- 구현이 비교적 쉽다.
- Thread Safe 하다.
단점
- 선택적 인자가 많아지면, 코드가 매우 길어지고 지저분해진다.
- 어떤 생성자를 써야하는지 class 사용자는 헷갈리기 쉽다.
Telescoping Constructor 예제 코드