이전 블로그 정리 내용을 참고하면 된다.
1. 싱글톤 패턴이란 ?
싱글톤 패턴(Singleton Pattern)은 특정 클래스의 인스턴스가 오직 하나만 생성되도록 보장하고, 그 인스턴스에 전역적인 접근을 제공하는 패턴이다. 이 패턴은 애플리케이션 전체에서 공통된 자원이나 설정을 관리하는 데 유용하다.

2. 구현하기
package ex05;
//목적 : 문지기를 메모리에 하나만 띄우고 싶다.
public class Doorman {
public static Doorman instance = new Doorman(); // instance는 static에 저장, new Doorman() 는 heap 에 저장
private Doorman() {}
public void 쫓아내(Animal animal) {
System.out.println(animal.getName() + " 을 쫓아내");
}
}
Doorman 클래스를 static 으로 만들어 클래스가 로드될 때 메모리에 한 번만 뜬다. instance 변수를 활용해 전역에서 변수를 사용할 수 있다.
package ex05;
// 전략 패턴
// 풀링 : pooling ( 객체를 10개 정도 유지하는 기법으로 구현해보기)
public class App {
public static void main(String[] args) {
Animal tiger = new Tiger();
Doorman doorman = Doorman.instance;
doorman.쫓아내(tiger);
}
}
싱글톤 패턴으로 만들면 Doorman 클래스를 실행할 때 메모리에 새롭게 띄울 필요없이 Doorman.instance 만 호출하면 사용할 수 있다.
Share article