Singleton 패턴
정의
- 인스턴스가 한 개밖에 존재하지 않는 것을 보증하는 패턴을 Singlton 패턴이라고 한다.
사용 목적
- 인스턴스가 1개밖에 없다라는 전제조건 아래서 프로그래밍이 가능하다.
역할별 수행 작업

- Singleton
- Singleton 패턴에는 Singleton의 역할만 존재함
- 유일한 인스턴스를 얻기 위한 static 메소드를 가지고 있고, 이 메소드는 언제난 동일한 인스턴스를 반환함
예제
public class Singleton {
private static Singleton singleton = new Singleton();
private Singleton() {
System.out.println("인스턴스를 생성했습니다.");
}
public static Singleton getInstance() {
return singleton;
}
}
public class Main {
public static void main(String[] args) {
System.out.println("Start.");
Singleton obj1 = Singleton.getInstance();
Singleton obj2 = Singleton.getInstance();
if (obj1 == obj2) {
System.out.println("obj1과 obj2는 같은 인스턴스입니다.");
} else {
System.out.println("obj1과 obj2는 같은 인스턴스가 아닙니다.");
}
System.out.println("End.");
}
}
GitHub 소스 참고