Dev JS Blog

코틀린 - const val 과 val 큰 차이점 본문

옛날 창고/안드로이드

코틀린 - const val 과 val 큰 차이점

Dev JS 2021. 6. 13. 05:00
728x90

코틀린을 사용해보면서 

val 이 const와 같다고 생각했다. 그러던 중 

private const val A = "A"

이와 같은 소스를 보게되었다.

그래서 const val 과 val 의 차이를 찾아보았다.

가장 큰 차이는

val 은 런타임 시점, const val 은 컴파일 시점에 값이 할당되는 것이다.

const val 는 문자열과 기본자료형만 할당할수 있으며 클래스 내부에서는 선언이 불가능하다.

다만 클래스 내부에서 선언하려면 companion object에서 선언가능하다.

그리고 자바로 치면 static final 과 같은 소스로 볼 수 있다.

private const val TAG = "MainActivity"

class MainActivity : AppCompatActivity(){

}

 

728x90
Comments