Junior
Kotlin-də 'alias' nədir və onu necə istifadə etmək olar?
sobes.tech Süni İntellekt
AI-dan cavab
Kotlin-də alias ayrıca ayrılmış rezerv olunmuş söz kimi mövcud deyil. Yəqin ki, typealias nəzərdə tutursunuz.
typealias mövcud olan bir tipe alternativ ad vermək üçün bir yoldur. O, yeni bir tip yaratmır, sadəcə artıq mövcud olanın takma adıdır.
typealias istifadə etməyin üstünlükləri:
- Kodun oxunaqlığını artırır, xüsusən mürəkkəb və ya uzun tiplərlə işləyərkən (məsələn, çox parametrli və ya generik funksiyalar).
- Refaktorlaşdırmanı sadələşdirir. Əsas tip dəyişərsə,
typealiastərifini bir yerdə dəyişmək kifayətdir.
İstifadə:
typealias faylın yuxarı səviyyəsində elan edilir.
// Funksiya nümunəsi
typealias ClickListener = (View, MotionEvent) -> Unit
// Generik nümunə
typealias StringList = List<String>
// Sinif nümunəsi
typealias UserName = String // Yeni bir String tipi yaratmır
// İstifadə
fun setOnClickListener(listener: ClickListener) {
// ...
}
val names: StringList = listOf("Alice", "Bob")
typealias aşağıdakı üçün istifadə edilə bilər:
- Siniflər
- İnterfeyslər
- Funksiya literaləri
- Generik tiplər
- Anotasiya
Əhəmiyyətli odur ki, typealias sadəcə bir takma addır. Kotlin tərtibçisi onu əsas tip kimi işləyir. Bytecode-da isə əsas tip istifadə olunur.
Bunun nümunəsi, onun sadəcə bir takma ad olduğunu göstərir:
typealias MyInt = Int
fun receiveInt(i: Int) {
println("Alınan Int: $i")
}
fun main() {
val num: MyInt = 10
receiveInt(num) // MyInt, Int yerinə keçə bilər
}