Today I learned
singleton pattern
by soheemon
2018. 10. 26.
* https://wikidocs.net/228를 참고하여 작성했습니다.
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 하게 된다.
|
| |
댓글