Jam's story
싱글톤 Singleton 본문
싱글톤
- 객체를 한개만 만들도록 보장
- 싱글톤을 만들려면 클래스 외부에서 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 |