본문 바로가기

BackEnd/Java

[java] 이것이 자바다 ch06 singleton(싱글톤) 패턴

728x90
반응형

◎ 싱글톤 패턴

   ▷ 생성자를 private 접근 제한해서 외부에서 new 연산자로 생성자를 호출할 수 없도록 막아서

       외부에서 마음대로 객체를 생성하지 못하게 합니다.

   ▷ 대신 싱글톤 패턴이 제공하는 정적 메소드를 통해 간접적으로 객체를 얻을 수 있습니다.

 

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();  // private이므로 다른 클래스에서 생성 불가
//		Singleton obj2 = new Singleton();  // private이므로 다른 클래스에서 생성 불가
		
		Singleton obj1 = Singleton.getInstance();
		Singleton obj2 = Singleton.getInstance();
		
		if(obj1 == obj2) {
			System.out.println("같은 Singleton 객체입니다.");
		} else {
			System.out.println("다른 Singleton 객체입니다.");
		}
	}
}

// 출력 :
// 같은 Singleton 객체입니다.

 

singleton을 왜 사용하는지는 확실하게 모르겠지만 새로운 함수를 통해 불러올 수 있다는 것은 알 수있네요!!

 

나중에 쓰일일이 있겠죠?ㅎㅎ

 

많은 분들의 피드백은 언제나 환영합니다! 많은 댓글 부탁드려요~~

 

728x90
반응형

'BackEnd > Java' 카테고리의 다른 글

[java] 이것이 자바다 ch07 상속  (2) 2023.01.12
[java] class  (1) 2023.01.12
[java] 이것이 자바다 ch06 패키지  (0) 2023.01.11
[java] Getter와 Setter  (1) 2023.01.11
[java] 접근 제한자  (0) 2023.01.11