소프트웨어 디자인 패턴 중 하나로, 클래스의 인스턴스를 단 한개만 생성하도록 보장하는 패턴.애플리케이션에서 전역적으로 접근해야 하는 리소스, 설정 정보, 캐시 등을 담당하는 객체를 구현할 때 유용하게 사용.생성자를 Private로 설정, 외부에서 직접적으로 인스턴스를