Junior — Middle
Оё метавонед принсипи кори reified дар Kotlin-ро шарҳ диҳед?
sobes.tech AI
Ҷавоб аз AI
Дар Kotlin механизм reified истифода мешавад дар якҷоягӣ бо функсияҳои inline барои нигоҳ доштани маълумоти дар бораи навъи дар вақти иҷро, ки одатан аз сабаби нобудшавии навъҳо (type erasure) дар JVM имконнопазир аст.
Вақте ки функсия ҳамчун inline эълон мешавад ва параметри навъ ҳамчун reified нишон дода мешавад, ин навъ мустақиман дар бадани функсия истифода мешавад, масалан, барои санҷиши навъ ё сохтани намунаҳо.
Масалан:
inline fun <reified T> isInstance(value: Any): Boolean {
return value is T
}
fun main() {
println(isInstance<String>("test")) // true
println(isInstance<Int>("test")) // false
}
Бе reified, чунин санҷиш имконнопазир аст, зеро навъи T дар вақти компилятсия нобуд мешавад.