싱글톤(Singleton)
하나의 애플리케이션 내에서 단 하나만 생성되는 객체
package sec10.exam04_singleton;
//디자인패턴중 하나인 싱글톤 패턴으로 설계한 클래스.
public class Singleton {
//private : 외부에서 접근을 막는 기능.
//1)자신의 객체를 내부의필드(privat)로 생성
private static Singleton singLeton = new Singleton();
//2)생성자(private)
private Singleton() {}
//3)생성된 자신의 객체를 참조하는 메서드정의
static Singleton getInstance() {
return singLeton;
}
}
package sec10.exam04_singleton;
public class SingletonExample {
public static void main(String[] args) {
//Singleton클래스는 싱글톤패턴으로 생성했기에 생성자를 호출할수가 없다.(private)
//Singleton s1 = new Singleton()
Singleton s1 = Singleton.getInstance(); //생성된 객체의 주소를 대입
Singleton s2 = Singleton.getInstance(); // 생성된 객체의 주소를 대입
// 참조 타입일경우 == : 주소비교
if(s1 == s2) {
System.out.println("같은 Singleton 객체입니다");
}else {
System.out.println("다른 Singleton 객체입니다");
}
}
}
'JAVA' 카테고리의 다른 글
Overriding 코드 정리 (0) | 2022.09.14 |
---|---|
final (0) | 2022.09.13 |
다차원 배열: 2차원 배열 (0) | 2022.09.07 |
배열 (힙,스택영역) (0) | 2022.09.07 |
반복문 for , While 문 (0) | 2022.09.06 |