Junior — Middle
Kotlin-də refleksiya ilə necə işləmək olar?
sobes.tech Süni İntellekt
AI-dan cavab
Kotlin-də refleksiya ilə işləmək kotlin.reflect paketindən istifadə etməklə həyata keçirilir. Əsas sinif KClass-dir və bu, işləmə zamanı sinfi təmsil edir. Refleksiya vasitəsilə siniflərin xüsusiyyətləri, funksiyaları, konstruktorları və annotasiyaları haqqında məlumat əldə etmək mümkündür.
Sinif adını və onun xüsusiyyətlərinin siyahısını almaq üçün nümunə:
import kotlin.reflect.full.memberProperties
class User(val name: String, val age: Int)
fun main() {
val kClass = User::class
println("Sinif adı: ${kClass.simpleName}")
for (prop in kClass.memberProperties) {
println("Xüsusiyyət: ${prop.name}")
}
}
Həmçinin, funksiyaları çağırmaq və nümunələr yaratmaq üçün refleksiyadan istifadə etmək mümkündür, lakin bəzən Java Reflection API (java.lang.reflect) istifadə etmək lazım olur.
Refleksiya dinamik analiz və obyektlərlə işləmək üçün faydalıdır, məsələn, serializasiya, DI və ya framework-lər yazarkən.