이펙티브 자바 정리 2일차
이펙티브 자바 정리 2일차 private 생성자나 열거 타입으로 싱글턴임을 보증하라 클래스를 싱글턴으로 만들면 이를 사용하는 클라이언트를 테스트하기가 어려워질 수 있다. 타입을 인터페이스로 정의한 다음 그 인터페이스를 구현해서 만든 싱글턴이 아니라면 싱글턴 인스턴스를 가짜(mock) 구현으로 대체할 수 없기 때문이다. 싱글턴을 만드는 방식은 보통 둘 중 하나다. 두 방식 모두 생성자는 private으로 감춰두고, 유일한 인스턴스에 접근할 수 있는 수단으로 public static 멤버를 하나 마련해둔다. Public static final 필드 방식의 싱글턴 public class Elvis{ public static final Elvis INSTANCE = new Elvis(); private Elvi..
2021.08.11