본문 바로가기
Today I learned

singleton pattern

by soheemon 2018. 10. 26.


* https://wikidocs.net/228를 참고하여 작성했습니다.

2 static


singleton pattern

- 클래스를 통해 여러개의 객체를 생성할 수 있는데,

- 싱클톤은 단 하나의 객체만 생성하도록 강제한다. 


class Singleton { private static Singleton one; private Singleton() { } public static Singleton getInstance() { if(one==null) { one = new Singleton(); } return one; } } public class SingletonTest { public static void main(String[] args) { Singleton singleton1 = Singleton.getInstance(); Singleton singleton2 = Singleton.getInstance(); System.out.println(singleton1 == singleton2); } 

} 


코드 설명


- 기본 생성자를 privete 로 호출을 막는다. 

- 최초 getInstance가 호출되면 참조변수 one이 null이므로 new에 의해서 객체가 생성된다.

- 이후 호출될때는 one은 static 변수이기 때문에 null이 아니게 된다. 

- 따라서 이후 호출될때는 이미 만들어진 객체인 one을 항상 return 하게 된다.






















'Today I learned' 카테고리의 다른 글

12월11일  (0) 2018.12.26
11월27일  (0) 2018.11.27
JAVA 2주차 강의 정리  (0) 2018.10.24
JAVA 1주차 강의정리  (0) 2018.10.14
4. 상속과 캐스팅  (0) 2018.09.16

댓글