Programming Language/Kotlin

[Kotlin] const val에 대해서 공부하자

Tenacity_Dev 2024. 5. 28. 19:16
728x90

const val 이란

Kotlin에서 const val과 val은 모두 불변 변수(immutable variable)를 선언할 때 사용되지만, 사용 목적과 특성이 다르다.

const val은 컴파일 시간 상수(compile-time constant)를 선언할 때 사용된다. 이는 변수가 컴파일 시점에 값이 결정되어 있어야함을 의미한다.

 

특징

  • 기본적인 특징으로는 기본형 타입에만 사용이 가능하다(Int, Long, Boolean, String등)
  • 클래스의 companion object나 최상위 레벨에서만 선언할 수 있다.
  • 컴파일 시점에 값이 결정되므로 성능 면에서는 유리하다.
const val MAX_COUNT = 100
const val GREETING_MESSAGE = "Hello, World!"

 

그렇다면 val과는 무엇이 다른가.

val은 런타임 상수(runtime constant) 또는 불변 변수를 선언할 때 사용한다. 즉, 런타임 시점에 값이 결졍된다.

또한 val은 모든 데이터 타입이 사용 가능하며 클래스의 멤버, 로컬 변수 최상위 레벨등 어디서나 선언 가능하다.

 

 

728x90