generics - Kotlin 从泛型类型中获取属性

标签 generics kotlin reflection

我可以在 C# 中做这样的事情

PropertyInfo propertyInfo = typeof(TEntity).GetProperties()

如何在 Kotlin 中做同样的事情

最佳答案

那么JVM在运行时遭受类型删除。

你不能简单地做到这一点,但 Kotlin 提供了 reified inline 的关键字可以利用的功能

inline fun <reified T: Any> takeKClass() {
    val reflection: KClass<T> = T::class
    ...
}

但请记住,内联函数在编译时嵌入到调用站点中,但这是 Kotlin 提供的一个很好的特性。

关于generics - Kotlin 从泛型类型中获取属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61185022/

相关文章:

android - kotlin.UninitializedPropertyAccessException : lateinit property roomClickedInterface has not been initialized

scala - 将Scala类型限制为一组类型之一

Java 泛型的好奇心

android - 如何根据 mockk 中传递的参数从同一函数返回两个不同的模拟?

android - NestedScrollView中的ConstraintLayout(带有RecyclerView)

c# - 通过反射遍历类型时如何过滤掉 <>c_DisplayClass 类型?

generics - 如何在scala中获取泛型参数

java - 何时使用泛型方法以及何时使用通配符?

scala - 为什么Scala原语不会在Java反射中显示为类型参数?

c# - 静态方法返回基类实例