반응형
- 프로그램에서 하나의 객체(인스턴스)만 만들도록 보장해야하는 경우 사용
- new 연산자로 객체를 생성하지 못하도록 생성자를 private 으로 선언
- static 으로 유일한 객체 생성
- 외부에서 유일한 객체를 참조할 수 있는 public static get() 메서드 작성 구현
public class *클래스* {
// 정적 객체
private static *클래스* *객체* = new *클래스*();
// 생성자
private *클래스*() {...}
// 정적 메서드
static *클래스* getInstance() {
if(*객체* == null) {
*객체* = new *클래스*();
}
return *객체*;
}
}
*클래스* obj = *클래스*.getInstance();
예시) java.uitl.Calendar 클래스
import java.util.Calendar;
Calendar calendar = Calendar.getInstance();
// 생성 불가
Calendar calendar = new Calendar();