package kr.or.ddit.singleton;
public class MySingleton {
/*
-singleton 패턴 ==> 객체가 1개만 만들어지게 하는 방법 ( 외부에서 new 명령을 사용하지 못하게 한다. )
-singleton 클래스를 만드는 방법 ( 필수 구성 요소 ) 3가지 규칙 필수구성 + ~ 추가
1. 자신 class 의 참조값이 저장될 변수를 private static 으로 선언한다.
2. 생성자의 접근제한자를 private 으로 한다. ( 외부에서 사용하지 못하게 한다. )
3. 자신 class 의 인스턴스를 생성하고 , 생성된 인스턴스의 참조값을 반환하는 메서드를 public static 으로 작성한다.
(이 메서드의 이름은 보통 getInstance 로 한다. )
//싱글톤 사용하는 이유 : 주로 메소드만 있는 경우 or 어떤 데이터를 항상 하나만 객체를 생성해서 그곳에서만 데이터가 변화되도록 하고 싶을때
*/
//1번
private static MySingleton single; //참조값이 저장될 변수
//2번
private MySingleton() {
System.out.println("생성자 입니다.");
}
//3번
public static MySingleton getInstance() {
if(single == null) single = new MySingleton();
return single;
}
//static 안에서는 static 변수만 있어야 한다.
//생성자는 private 이라서 접근이 외부에서는 안되고
//static 인 이유는 : getInstance() 는 static 이어서 이것을 불러온다 ( 외부에서 )
// 3번까지가 필수 아래는 선택 ----------------------------------------------------
//기타 이 클래스가 처리할 내용을 작성한다.
public void displayTest() {
System.out.println("이 메서드는 싱글톤 클래스의 메서드 처리 내용입니다. ");
}
}
댓글
댓글 쓰기