[kotlin] 프로퍼티(Property)와 관련된 데이터 타입 활용 in 코틀린

코틀린에서는 프로퍼티를 통해 변수의 값을 설정하고 가져오는 것이 가능합니다. 또한, 프로퍼티를 활용하여 데이터 타입을 설정하고 관리하는 방법 또한 제공됩니다. 이번에는 코틀린에서 프로퍼티와 관련된 데이터 타입을 어떻게 활용하는지 알아보겠습니다.

1. 프로퍼티의 기본적인 활용

코틀린에서는 프로퍼티를 정의할 때 데이터 타입을 명시하거나 타입 추론(inference)을 통해 데이터 타입을 결정할 수 있습니다.

프로퍼티의 정의는 다음과 같이 할 수 있습니다.

// 데이터 타입을 명시적으로 정의
var name: String = "John"

// 타입 추론을 통한 데이터 타입 결정
var age = 30

위 예제에서 name 프로퍼티는 String 타입으로 명시적으로 정의되었고, age 프로퍼티는 초기값을 통해 Int 타입으로 추론되었습니다.

2. 지연 초기화 프로퍼티

코틀린에서는 lateinit 키워드를 사용하여 지연 초기화 프로퍼티를 정의할 수 있습니다. 이를 통해 프로퍼티의 초기화를 나중에 수행할 수 있습니다.

lateinit var email: String

위 예제에서 email 프로퍼티는 lateinit 키워드를 통해 나중에 초기화될 수 있는 프로퍼티로 정의되었습니다.

3. 변경 가능/불변 프로퍼티

코틀린에서는 val 키워드를 사용하여 변경 불가능한(immutable) 프로퍼티와 var 키워드를 사용하여 변경 가능한(mutable) 프로퍼티를 정의할 수 있습니다.

val userId: Int = 101
var isAdmin: Boolean = false

위 예제에서 userId는 변경 불가능한 프로퍼티로 정의되었고, isAdmin은 변경 가능한 프로퍼티로 정의되었습니다.

4. 커스텀 접근자 메서드 정의

코틀린에서는 프로퍼티에 대해 커스텀 접근자(getter)와 변경자(setter)를 정의할 수 있습니다.

var fullName: String = "John Doe"
    get() = field.toUpperCase()
    set(value) {
        field = "Mr. $value"
    }

위 예제에서 fullName 프로퍼티에는 get 메서드와 set 메서드가 정의되어 있습니다. get 메서드는 해당 프로퍼티의 값을 대문자로 변환하여 반환하고, set 메서드는 새로운 값을 설정할 때 “Mr. “를 추가하여 저장합니다.

프로퍼티와 관련된 데이터 타입 활용에 대한 내용을 알아보았습니다. 프로퍼티를 사용하면 코드의 가독성과 유지보수성을 높일 수 있으며, 다양한 데이터 타입을 활용하여 프로그램을 작성할 수 있습니다.


참고 문헌:

  1. 코틀린 공식 문서. “Properties and Fields”. https://kotlinlang.org/docs/properties.html. Accessed on Oct 25, 2021.