디자인 패턴 ~Singleton~
4867 단어 객체 지향디자인 패턴신인 프로그래머 응원uml자바
1. 소개
GoF의 디자인 패턴에서 Singleton 패턴을 요약합니다.
2. Singleton 패턴이란?
3. 샘플 클래스 다이어그램
4. 샘플 프로그램
싱글 톤 인스턴스를 생성하는 프로그램입니다.
4-1. Singleton 클래스
유일한 인스턴스를 반환하는 클래스입니다.
Singleton 클래스의 생성자는 private 입니다. 이는 Singleton 클래스 외부에서 생성자를 호출하는 것을 금지하기 때문입니다.
Singleton.cs
public class Singleton {
private static Singleton singleton = new Singleton();
private Singleton() {
System.out.println("インスタンスを生成しました。");
}
public static Singleton getInstance() {
return singleton;
}
}
4-2. Main 클래스
메인 처리를 실시하는 클래스입니다.
Main.cs
public class Main {
public static void main(String[] args) {
Singleton obj1 = Singleton.getInstance();
Singleton obj2 = Singleton.getInstance();
if (obj1 == obj2) {
System.out.println("obj1とobj2は同じインスタンスです。");
} else {
System.out.println("obj1とobj2は同じインスタンスではありません。");
}
}
}
4-3. 실행 결과
インスタンスを生成しました。
obj1とobj2は同じインスタンスです。
5. 장점
Singleton 패턴은 인스턴스 수에 제한을 둡니다.
인스턴스가 여러 개 존재하면 인스턴스가 서로 영향을 미치고 예상치 못한 버그를 만들 수 있습니다.
그러나 인스턴스가 하나만 있다는 보장이 있다면 전제 조건으로 프로그래밍할 수 있습니다.
6. GitHub
7. 디자인 패턴 목록
8. 참고
이번 기사 및 샘플 프로그램은 이하의 서적을 바탕으로 작성하였습니다.
매우 이해하기 쉽고 공부가되었습니다. 감사합니다.
디자인 패턴이나 샘플 프로그램에 대한 설명이 상세하게 쓰여져 있으므로, 꼭 서적의 분도 봐 주세요.
Reference
이 문제에 관하여(디자인 패턴 ~Singleton~), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/i-tanaka730/items/507d323f1ebb3167b067텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)