[Kotlin] 코틀린 constructor vs init block
Constructor 와 init코틀린에서는 class를 초기화 할때 두가지 방법을 제공합니다.constructor (생성자)를 이용하거나 init()을 사용하여 객체가 생성될때 필요한 초기화 작업을 할 수 있습니다. 그럼 어떤 순서로 두개가 초기화 될까요? 초기화 순서를 명시적으로 알고 있지 않으면 val로 정의한 함수에서 NPE가 발생하는 상황을 만날수도 있습니다.이런경우 IDE에서 아무런 warning이 발생하지 않을 수 있기 때문에 문제를 파악하기엔 더 어렵습니다. constructor, initializer코틀린에서 객체를 생성하면 초기화를 위한 코드들이 호출 되며, 아래와 같은 부분이 초기화 대상 입니다. Property initalizersval count: Int = 0 프로퍼트 선언과 동..