Jam's story

싱글톤 Singleton 본문

자바

싱글톤 Singleton

애플쩀 2022. 1. 7. 00:23
싱글톤
  • 객체를 한개만 만들도록 보장
  • 싱글톤을 만들려면 클래스 외부에서  new 연산자로 생성자를 못만들게 해야한다 - 생성자앞에 private 
  • 필드의 값을 못바꾸도록 private 로 설정 
  • 클래스 내부에서는 new 연산자로 생성자 호출이 가능하다 
  • 외부에서 호출할 수 있도록 getInstance()를 선언 
public class 클래스 {
//정적필드
     private static 클래스 singleton=new 클래스();

//생성자
    private 클래스();

//정적 메소드
  static 클래스 getInstance(){
            return singleton;
}
}
package smhrd;
class Singleton{
	private static Singleton Singleton=new Singleton();
	
	private Singleton() {}
	
	static Singleton getInstance() {
		return Singleton;
	}
}

public class CalExam {

	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		Singleton s1=Singleton.getInstance();
		Singleton s2=Singleton.getInstance();
		
		if(s1==s2) {
			System.out.println("같은객체");
		}
	    //에러 Singleton s2=new Singleton(); 
	}

}

 

'자바' 카테고리의 다른 글

접근제한 (public, private ,protected, defualt )  (0) 2022.01.13
final 필드와 상수  (0) 2022.01.13
정적멤버와 static  (0) 2022.01.07
클래스  (0) 2022.01.05
chap5 연습문제  (0) 2022.01.03
Comments