item3 (1) 썸네일형 리스트형 [Effective Java] item3. private 생성자나 열거 타입으로 싱글턴임을 보장하라 1. 싱글턴 (singleton) 이란?인스턴스를 오직 하나만 생성할 수 있는 클래스를 말한다.함수와 같은 무상태(stateless) 객체설계상 유일해야 하는 시스템 컴포넌트클래스를 싱글턴으로 만들면 이를 사용하는 클라이언트를 테스트하기가 어려워질 수 있다.2. 싱글턴을 만드는 첫 번째 방법 ) public static 멤버가 final 필드인 방식private 생성자는 public static final 필드를 초기화할 때 딱 한 번만 호출된다.클래스가 초기화될 때 만들어진 인스턴스가 전체 시스템에서 하나뿐임이 보장된다.예외 : 권한이 있는 클라이언트는 리플렉션 API인 AccessibleObject.setAccessible을 사용해 private 생성자를 호출할 수 있다.해결방안 : 생성자를 두 번 .. 이전 1 다음