싱글톤 패턴

목적

예시

싱글톤 패턴 구현

private 생성자, static 게터

public class Settings {

    private static Settings instance;

    private Settings() {}

    public static Settings getInstance() {
        if (instance == null) {
            instance = new Settings();
        }
        return instance;
    }
    
}

문제 : 멀티 쓰레드 환경에서 경쟁 상태에 의해 싱글톤 인스턴스의 불변식(오직 하나의 인스턴스만 존재한다) 깨짐

synchronized 게터