Java Singleton(싱글톤)




Singleton(싱글톤)

- 프로그램에서 단 하나의 인스턴스만 만들수 있도록 보장해야 하는 경우 이 인스턴스를 싱글톤(Singleton)이라 한다.


- 클래스 외부에서 생성자를 호출할 수 없도록 제한해야 한다.





- 외부에서 생성하지 못하도록 클래스 내부에서 private 접근의 인스턴스를 생성하고, 생성자를 private로 선언한다.


- 마지막으로 생성한 private 객체를 return해주는 static 메소드를 만들어 객체를 리턴해준다.

코드1





- 생성자를 private로 선언했으므로 new로 인스턴스를 생성하려고 하면 에러가 발생한다.


- static 메소드인 getSingle을 이용하여 인스턴스를 가져올 수 있다.

코드2

결과1




- 결과1을 보면 ss와 ss2가 같은 것을 확인할 수 있으며 단 하나의 인스턴스만 생성된다.


간단히 보자면 인스턴스를 하나 생성 후 인스턴스를 생성할 수 없도록 막고 생성한 인스턴스를 가져와 사용할 뿐이다.







'JAVA > 기초' 카테고리의 다른 글

Java import  (0) 2020.03.18
Java 상수 static final  (0) 2020.03.18
Java static 정적 변수, 메소드  (0) 2020.03.17
Java 배열 기본값, 배열 복사  (0) 2020.03.16
Java 향상된 for문, label  (0) 2020.03.16

+ Recent posts