본문 바로가기

Kotlin

Kotlin - 타입 별칭 (Type aliases)

타입 별칭은 말 그대로 원래 존재하는 타입에 또다른 이름을 제공한다. 타입 이름이 너무 긴 경우 짧은 대체 이름을 설정해서 사용 할 수 있다.

특히 아래와 같이 제네릭 타입을 간결하게 표현 할 수 있다.

typealias NodeSet = Set<Network.Node>

typealias FileTable<K> = MutableMap<K, MutableList<File>>

 

함수에도 적용 할 수 있다.

typealias MyHandler = (Int, String, Any) -> Unit

typealias Predicate<T> = (T) -> Boolean

 

내부 클래스나 중첩 클래스에도 적용 가능하다.

class AForTypeAlias {
    inner class Inner
}

class BForTypeAlias {
    class Inner
}

typealias AInner = AForTypeAlias.Inner
typealias BInner = BForTypeAlias.Inner

 

타입 별칭은 새로운 형태의 타입을 생성시키는 것이 아니고, 코틀린 컴파일러가 컴파일시에 별칭을 원래 타입으로 변환하는 방식으로 동작한다.

'Kotlin' 카테고리의 다른 글

Kotlin - 고차함수와 람다식 (Higher-order functions and lambdas)  (0) 2024.04.21
Kotlin - 함수 (Functions)  (0) 2024.04.09
Kotlin - Delegated properties  (0) 2024.03.28
Kotlin - Object 표현과 정의  (0) 2024.03.23
Kotlin - Deligation  (0) 2024.03.23