Oto różne implementacje do pobierania nazw klas. Możesz go wykorzystać zgodnie ze swoimi wymaganiami.
import kotlin.reflect.KClass
val <T : Any > T.kClassName: KClass<out T>
get() {
return javaClass.kotlin
}
Tutaj możemy uzyskać nazwę klasy w kotlin
val <T : Any > T.classNameKotlin: String?
get() {
return javaClass.kotlin.simpleName
}
Tutaj możemy uzyskać nazwę klasy w kotlin
val <T : Any > T.classNameJava: String
get() {
return javaClass.simpleName
}
Oto wyniki następujących operacji.
fun main(){
val userAge = 0
println(userAge.kClassName)
Output: class java.lang.Integer (Kotlin reflection is not available)
println(userAge.classNameKotlin)
Output: Int
println(userAge.classNameJava)
Output: Integer
}