我如何获得Kotlin类(K12在K12中)的声明函数?
基本上是这样。 我想知道如何得到一个KClass的函数/方法…看起来像我只能遍历属性和扩展属性。
更新 : 现在你可以得到一个类的函数,这个类的扩展在kotlin.reflect
包中kotlin.reflect
: functions
, declaredFunctions
, memberFunctions
, staticFunctions
等等
科特林反射是目前正在进行的一项工作。 我们计划在今年夏天结束时,将API用于反思功能的下一个里程碑。
同时,唯一的解决方法是使用Java反射来执行此任务。
后来的里程碑包括1.0 beta版的Kotlin反射更为全面。
查看Kotlin Reflection的概览文档,特别是KClass 。
例如,给定一个类,你可以看到成员函数使用:
val functions = Someclass::class.declaredMemberFunctions
或属性:
val properties = Someclass::class.declaredMemberProperties
从Java类到KClass:
val kclz = this.javaClass.kotlin
另请参阅: Kotlin.reflect包API文档