Recent Posts
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- pytest
- JanusWebRTC
- addhooks
- PersistenceContext
- JanusWebRTCGateway
- 자원부족
- 개성국밥
- kotlin
- vfr video
- terminal
- RouteLocator
- python
- 깡돼후
- ErrorResponse
- tolerated
- PytestPluginManager
- preemption #
- mp4fpsmod
- 달인막창
- Value too long for column
- Spring Batch
- 코루틴 컨텍스트
- gitflow-shFlags
- 겨울 부산
- JanusGateway
- 코루틴 빌더
- VARCHAR (1)
- table not found
- taint
- JanusWebRTCServer
Archives
너와 나의 스토리
[Java] 싱글톤(Singleton)을 만들자! 본문
반응형
싱글톤(Singleton)
- 하나의 클래스로부터 전체 프로그램에서 단 하나의 객체만 만들도록 보장해야 하는 경우가 있다.
- 이때, 유일하게 생성된 이 객체를 싱글톤이라고 한다.
- 싱글톤을 만들려면 클래스 외부에서 new 연산자로 생성자를 호출할 수 없도록 막아야 한다.
- 방법: 생성자 앞에 private을 붙이면 된다.
- 그렇다면 객체 한 번은 어떻게 생성하는가?
- 클래스 내에 해당 클래스 타입을 가지는 static field를 선언 및 초기화해준다.
- 이 static field를 리턴하는 static method를 생성한다.
- 예:
public class ClassName {
private static ClassName singleton = new ClassName();
private className(){}
static ClassName getInstance() {
return singleton;
}
}
- 외부에서 객체를 얻는 유일한 방법은 getInstance() 메서드를 호출하는 방법이다.
- getInstance() 메서드는 (동일한) 단 하나의 객체만 리턴하기 때문에 여러 번 호출돼도 동일한(singleton) 객체만 참조하게 된다.
출처:
- [이것이 자바다]
반응형
'Programming Language > Java' 카테고리의 다른 글
[Java] 추상 클래스 / 인터페이스 (2) | 2021.04.13 |
---|---|
[Java] 어노테이션(Annotation) 만들고 적용하는 방법 (0) | 2021.04.07 |
[Java] Static field의 복잡한 초기화 작업을 위한 정적 블록(Static block) (0) | 2021.04.07 |
[Java 기초부터 다시] 4. 데이터 - 참조 타입/JVM/Enum (0) | 2021.04.07 |
[Java 기초부터 다시] 3. 조건문과 반복문 (0) | 2021.04.04 |
Comments