728x90
반응형
Singleton 패턴은 소프트웨어 디자인 패턴 중 하나로, 어플리케이션 내에서 특정 클래스의 인스턴스가 하나만 생성되도록 보장하는 패턴입니다. 이 글에서는 Singleton 패턴의 개념과 구현 방법을 설명하고, 실제 예제를 통해 살펴보겠습니다.
ingleton 패턴이란?
- Singleton 패턴은 어플리케이션 내에서 특정 클래스의 인스턴스가 하나만 생성되도록 보장하는 디자인 패턴입니다. 이를 통해 클래스의 인스턴스가 오직 하나만 존재하도록 제한할 수 있습니다.
Singleton 패턴의 장점:
- 객체의 공유: 하나의 인스턴스를 공유하여 메모리 사용을 줄일 수 있습니다.
- 전역 접근: 어디서든지 인스턴스에 접근할 수 있습니다.
728x90
Singleton 패턴 구현 방법:
- Singleton 클래스는 보통 생성자를 private으로 선언하여 외부에서의 인스턴스 생성을 막습니다. 정적 메서드를 통해 Singleton 인스턴스에 접근할 수 있도록 합니다.
public class Singleton {
private static Singleton instance;
private Singleton() {} // private 생성자
public static Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
Singleton 패턴 예제:
- 다음은 Singleton 패턴을 사용하여 로깅 기능을 구현한 예제입니다.
public class Logger {
private static Logger instance;
private StringBuilder logs = new StringBuilder();
private Logger() {} // private 생성자
public static Logger getInstance() {
if (instance == null) {
instance = new Logger();
}
return instance;
}
public void log(String message) {
logs.append(message).append("\n");
}
public String getLogs() {
return logs.toString();
}
}
Singleton 패턴은 어플리케이션 내에서 공유해야 할 객체를 보장하기 위해 사용됩니다. Singleton 패턴을 올바르게 사용하면 메모리 낭비를 줄이고 코드의 유지 보수성을 향상시킬 수 있습니다.
반응형
728x90
반응형
'JAVA' 카테고리의 다른 글
| 객체지향 프로그래밍에서의 상속 이해하기 (0) | 2024.03.09 |
|---|---|
| MVC 아키텍처 이해하기 (0) | 2024.03.09 |
| Gradle 프로젝트 설정하기 (0) | 2024.03.09 |
| Java에서 AWS S3에 파일 업로드하기 (0) | 2024.03.09 |
| Java 네트워크 프로그래밍 이해하기: 기본 개념과 예제 (0) | 2024.03.07 |