kotlin - singletone 구현하기.

구태훈·2020년 6월 15일

kotlin

목록 보기
4/5

Kotlin 언어는 Singletone을 구현하는 언어 차원에서 제공한다.
바로 object keyword를 사용한다.

object 선언

object SingleToneDefine {
	init {
    	println("init fun has been called")
    }
}
println("before use")
SingleToneDefine

$ before use
$ init fun has been called

  • init method는 최초 Singletone Object가 사용되는 시점에 호출된다. : lazy-loading

object expression

Singletone을 구현하는 다른 방법은 object expression 인데, 이를 이용하면 anonymous class 선언이 가능하다.

val anonymousObject = object: Any() {
	init {
    	println("anonymous has been initialized")
    }
}

$ anonymous has been initialized

Class 선언이 anonymous이기때문에 다른데서 Object를 생성 할 수 없다. 즉, Singletone이다.

요약

Kotlin에서 Singletone을 선언하는 방법은 아래와 같다.
1. Object 선언
2. Anonynous Class 를 이용하는 객체 표현식

profile
사업가를 꿈꾸는 소프트웨어 개발자.

0개의 댓글