Sobes.tech
Junior — Middle

Kokia yra reified modifikatoriaus paskirtis Kotlin?

sobes.tech AI

Atsakymas iš AI

Kotlin'e, reified modifikatorius naudojamas kartu su inline funkcijomis, kad išsaugotų tipo informaciją vykdymo metu (runtime). Paprastai, dėl tipų ištrynimo (type erasure) JVM'e, informacija apie generinius tipus nėra prieinama vykdymo metu, tačiau su reified galima pasiekti T tipą funkcijos viduje.

Tai leidžia, pavyzdžiui, atlikti tipo patikrinimus arba kurti klasių egzempliorius naudojant T::class arba T::class.java funkcijos viduje.

Pavyzdys:

inline fun <reified T> isInstance(value: Any): Boolean {
    return value is T
}

val result = isInstance<String>("test") // true

Be reified, toks kodas nėra įmanomas, nes T tipas nėra pasiekiamas vykdymo metu.