싱글톤(Singleton)
전체 프로그램에서 단 하나의 객체만 만들도록 보장해야 하는 경우가 있다.
단 하나만 생성된다고 해서 이 객체를 싱글톤(Singleton)이라고 한다.
조건
1. 싱글톤 만들려면 클래스 외부에서 new 연산자로 생성자를 호출할 수 없도록 막아야 한다.
2. 생성자를 외부에서 호출할 수 없도록 하려면 생성자 앞에 private 접근 제한자를 붙여줘야 한다.
ex)예시
-----------------------------------------------------------------------------------------------------
public class Singleton {
private static Singleton singleton = new Singleton();
private Singleton() {}
static Singleton getInstance() {
return singleton;
}
}
--------------------------------------------------------------------------
public class SingletonExample {
public static void main(String[] args) {
/*
Singleton obj1 = new Singleton(); //컴파일 에러
Singleton obj2 = new Singleton(); //컴파일 에러
*/
Singleton obj1 = Singleton.getInstance();
Singleton obj2 = Singleton.getInstance();
if(obj1==obj2){
System.out.println("같은 Singleton 객체 입니다.");
} else {
System.out.println("다른 Singleton 객체 입니다.");
}
}
}
'IT일반과목 > java' 카테고리의 다른 글
이중 배열 써서 알파벳 랜덤으로 출력하기(소문자) (0) | 2018.07.18 |
---|---|
자바 이중배열 달팽이 배열 (0) | 2018.07.17 |
정적 멤버와 static (0) | 2018.07.16 |
메소드 오버로딩 (0) | 2018.07.16 |
메소드에 대하여 설명 (0) | 2018.07.16 |