Singleton 패턴 구현하기
애플리케이션에서 여러 컴포넌트가 로깅 구성을 관리해야 합니다. 현재는 각 컴포넌트가 자체 LogManager를 생성해 구성 불일치가 발생하고 있어요. 모든 컴포넌트가 동일한 로깅 구성을 공유하도록 singleton 패턴 구현을 완성하세요.
이 연습은 강의의 일부입니다
Java 코드 최적화
연습 안내
LogManager타입의static변수instance를 추가하세요.- 생성자는 클래스 내부에서만 접근 가능하도록 하세요.
- 현재 값이 null일 때에만
LogManager인스턴스를 생성하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
public class Main {
public static void main(String[] args) {}
}
class LogManager {
// Add static instance variable to hold the instance
private static ____ ____;
private Map logConfig;
// Make constructor accessible only from within the class
___ LogManager() {
logConfig = new HashMap<>();
}
public static LogManager getInstance() {
// Only create if instance is currently null
if (____ ____ ____) {
instance = new LogManager();
}
return instance;
}
}