더북(TheBook)

2.2.8 싱글턴 사용하기

어떤 클래스에 속한 객체를 단 하나만 만들어야 할 때가 종종 있다. 이런 인스턴스를 싱글턴(sigle ton)이라고 부른다. 싱글턴 패턴은 클래스에 대해 인스턴스를 단 하나만 허용하는 디자인 패턴이다. 자바에서는 생성되는 인스턴스가 하나뿐임을 보장하기가 어려워 싱글턴 패턴에 관한 논란이 많다. 코틀린에서는 classobject라는 키워드로 바꾸기만 하면 쉽게 싱글턴을 만들 수 있다.

object MyWindowAdapter: WindowAdapter() {
    override fun windowClosed(e: WindowEvent?) {
        TODO("not implemented")
    }
}

이런 싱글턴 객체에는 생성자가 있을 수 없다. 프로퍼티가 있다면 반드시 초기화해야 한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.