<aside> 💡 단원 목표 올바른 객체생성 방법
</aside>
→ 생성자 / 정적 팩터리 메서드 / 빌더는 모두 인스턴스를 생성하는 방법이다
생성자를 사용
정적 팩터리 메서드를 사용
→ 선택적 매개변수가 많을 때 적절하게 대응하기 힘들다
NEW
빌더패턴(Builder)
→ 생성자에 선택적(필수가 아닌)매개변수가 많을 때 사용한다
case. 식품 포장의 영양정보를 표현하는 클래스
public class NutiritionFacts {
private final int servingSize; //ml, 1회 제공량 (필수)
private final int servings; //회, 총 n회 제공량(필수)
private final int calories; //선택
private final int fat; //선택
private final int sodium; //선택
private final int carbohydrate; //선택
}
1회 제공양, 총 제공량 횟수를 제외하고는 인스턴스마다 선택적으로 보유할 수 있는 값이다.
생성자
패턴다양한 상황에 맞는 생성자를 여러개 생성하는 방법이다.
원하는 매개변수를 모두 포함한 생성자 중 가장 짧은 것을 골라 호출