JAVA/Java 기초

싱글톤 패턴.java

john_ 2023. 1. 11. 16:28
728x90

2023.01.11 - [JAVA/Java 기초] - Getter & Setter .java

 

Getter & Setter .java

2023.01.11 - [JAVA/Java 기초] - 패키지.java 패키지.java 2023.01.11 - [JAVA/Java 기초] - 인스턴스 멤버, static, final ... 인스턴스 멤버, static, final ... 2023.01.10 - [JAVA/Java 기초] - 객체, 클래스 변수.java 객체, 클래

less-go.tistory.com

 


싱글톤 패턴

  • 애플리케이션 전체에서 단 한개의 객체만 생성해서 사용하고 싶다면 싱글톤(singleton) 패턴을 적용할수 있습니다.
  • 싱글톤 패턴의 핵심은 생성자를 private 접근제한 해서 외부에서 new 연산자로 생성자를 호출할 수 없도록 막는것입니다.
  • 단, 싱글톤 패턴이 제공하는 정적 메소드를 통해 간접적으로 객체를 얻을 수 있습니다.
//Singletone class 선언

public class Singletone {
	//private 접근 권한을 갖는 정적 필드 선언과 초기화
	private static Singletone singletone = new Singletone();
	
	//private 접근 권한을 갖는 생성자 선언
	private Singletone() {
	}
	
	//public 접근 권한을 갖는 정적 메소드 선언
	static Singletone getInstance() {
		return singletone;
	}
}
//실행메소드
public class SingletonExam {

	public static void main(String[] args) {

//		Singleton obj1 = new Singleton(); //private 설정으로 인해 Singleton 생성자에 접근이 불가
//		Singleton obj1 = new Singleton();

		Singletone obj1 = Singletone.getInstance();
		Singletone obj2 = Singletone.getInstance();
		
		if(obj1 == obj2) {
			System.out.println("같은 Singleton 객체입니다.");
		} else {
			System.out.println("다른 Singleton 객체입니다.");
		}
	}
}
728x90

'JAVA > Java 기초' 카테고리의 다른 글

상속.java  (1) 2023.01.12
static 이란?  (0) 2023.01.11
Getter & Setter .java  (0) 2023.01.11
패키지.java  (0) 2023.01.11
인스턴스 멤버, static, final ...  (0) 2023.01.11