Junior
Mis on 'alias' ja kuidas seda Kotlinis kasutada?
sobes.tech AI
Vastus AI-lt
Kotlinis alias ei eksisteeri eraldi reserveeritud sõnana. Tõenäoliselt mõtlete typealias.
typealias on viis anda olemasolevale tüübile alternatiivne nimi. See ei loo uut tüüpi, vaid on lihtsalt pseudonüüm juba olemasolevale.
typealias kasutamise eelised:
- Parandab koodi loetavust, eriti keeruliste või pikkade tüüpide puhul (näiteks funktsioonid paljude parameetrite või genrikatega).
- Lihtsustab refaktoreerimist. Kui põhityüp muutub, piisab
typealiasdefinitsiooni muutmisest ühes kohas.
Kasutamine:
typealias deklareeritakse faili ülaosas.
// Näide funktsiooniga
typealias ClickListener = (View, MotionEvent) -> Unit
// Näide genrikatega
typealias StringList = List<String>
// Näide klassiga
typealias UserName = String // Ei loo uut tüüpi String
// Kasutamine
fun setOnClickListener(listener: ClickListener) {
// ...
}
val names: StringList = listOf("Alice", "Bob")
typealias võib olla kasutusel:
- Klassidele
- Interfetsidele
- Funktsiooni literaalidele
- Genrikatega tüüpidele
- Anotatsioonidele
Oluline on meeles pidada, et typealias on lihtsalt pseudonüüm. Kotlini kompilaator käsitleb seda kui põhityppi. Bytekoodis kasutatakse põhityppi.
Näide, mis näitab, et see on lihtsalt pseudonüüm:
typealias MyInt = Int
fun receiveInt(i: Int) {
println("Saadud Int: $i")
}
fun main() {
val num: MyInt = 10
receiveInt(num) // Võib edastada MyInt sinna, kus oodatakse Int-i
}