*content
단 하나의 인스턴스를 보장하는 패턴
Singleton
public class Singleton{
private static Singleton singleton = new Singleton();
private Singleton(){
System.out.println("only one");
}
public static Singleton getInstance(){
return singleton;
}
}
Main
public class Main {
public static void main(String[] args){
Singleton instance1 = Singleton.getInstance();
Singleton instance2 = Singleton.getInstance();
System.out.println(instaince1 == instance2); //true
}
}
장점
- 외부에서 생성할 수 없다.
- 고정된 영역에 미리 할당한다.
- 고정된 영역에 할당하기에 메모리를 낭비하지 않는다.
- JVM이 종료되기 전까지 계속 사용할 수 있다.