Creating and Destroying Objects

본 페이지는 객체에 대해 올바른 생성과 파괴 방법에 대해 공부한 내용을 정리합니다.


Item1: 생성자 대신 정적 팩터리 메서드를 고려하라

일반적인 클래스의 인스턴스를 생성하는 방법은 public 생성자를 호출하는 방법이다. 하지만 생성자와 별도로 정적 팩터리 메서드(static factory method)를 제공할 수 있다. 해당 클래스의 인스턴스를 반환하는 단순한 정적 메서드에 대해 알아본다.

Item2: 생성자에 매개변수가 많다면 빌더를 고려하라

정적 팩터리와 생성자는 선택적 매개변수가 많을 경우 적절히 대응하기 어려운 제약을 가진다. 즉, 매개변수 개수가 많아지면 클라이언트 코드를 작성하거나 읽기가 어렵다. 이러한 경우에 활용할 수 있는 자바빈즈 패턴(JavaBeans pattern)과 더 나아가 해당 패턴의 단점을 개선한 빌더 패턴(Builder pattern)에 대해 알아본다.