Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reflection 如何获取Kotlin类(M12中的KClass)的声明函数?_Reflection_Kotlin - Fatal编程技术网

Reflection 如何获取Kotlin类(M12中的KClass)的声明函数?

Reflection 如何获取Kotlin类(M12中的KClass)的声明函数?,reflection,kotlin,Reflection,Kotlin,基本上是这样。我想知道如何获得给定KClass的函数/方法。。。看起来我只能迭代属性和扩展属性。更新:您现在可以获得一个类的函数,该类的扩展在packagekotlin中声明。reflect:函数,声明函数,成员函数,静态函数,等等 Kotlin reflection目前正在进行中。我们计划在下一个里程碑中发布用于内省函数的API,大概是在今年夏末 同时,唯一的解决方法是使用Java反射来完成此任务。Kotlin反射在后面的里程碑(包括1.0 Beta)中更为全面 查看的概述文档,特别是的概述文

基本上是这样。我想知道如何获得给定KClass的函数/方法。。。看起来我只能迭代属性和扩展属性。

更新:您现在可以获得一个类的函数,该类的扩展在package
kotlin中声明。reflect
函数
声明函数
成员函数
静态函数
,等等

Kotlin reflection目前正在进行中。我们计划在下一个里程碑中发布用于内省函数的API,大概是在今年夏末


同时,唯一的解决方法是使用Java反射来完成此任务。

Kotlin反射在后面的里程碑(包括1.0 Beta)中更为全面

查看的概述文档,特别是的概述文档

例如,给定一个类,您可以使用以下方法查看成员函数:

val functions = Someclass::class.declaredMemberFunctions
或财产:

val properties = Someclass::class.declaredMemberProperties
从Java类到KClass:

val kclz = this.javaClass.kotlin

另请参见:

反射现在更加完整。有关详细信息,请查看,特别是的。