kotlin

kotlin @JvmInline 사용 이유

jasNote 2025. 3. 25. 09:40

 

흔히 값 클래스를 만들 때  data class를 사용한다.

 

이때 한 개의 프로퍼티만 사용하는 값 클래스를 만들때는 어떨까?

 

아래 두개의 코드가 있다.

- data class 사용

- value class + @JvmInline 사용

data class CardNumber(number: String)

@JvmInline
value class CardNumber(number: String)

 

data class경우

인스턴스화 되어 힙에 저장된다.

 

 

value class + @JvmInline 경우

primitive 타입으로 stack에 저장된다.