Generics 通过反射调用泛型类中的方法

Generics 通过反射调用泛型类中的方法,generics,reflection,kotlin,Generics,Reflection,Kotlin,我试图设置一个函数,该函数接受一个泛型类,该泛型类通过反射调用该类中的一个方法。下面的代码已编译,但当我运行它时,会出现以下错误: java.lang.IllegalArgumentException: Callable expects 2 arguments, but 1 were provided. 为什么Kotlin声称应该有两个参数,而方法只接受一个?争论应该是什么 import kotlin.reflect.full.memberFunctions class myClass {

我试图设置一个函数,该函数接受一个泛型类,该泛型类通过反射调用该类中的一个方法。下面的代码已编译,但当我运行它时,会出现以下错误:

java.lang.IllegalArgumentException: Callable expects 2 arguments, but 1 were provided.
为什么Kotlin声称应该有两个参数,而方法只接受一个?争论应该是什么

import kotlin.reflect.full.memberFunctions


class myClass {
    fun test(d: String) : String {
        return d
    }
}

class test {

    fun <T: Any>ProcessStuff(
        d : T
    ) {
        val myClass  = d.let { it::class }

        var f3 = myClass.memberFunctions.find { it.name == "test"}!!
        println (f3.call ("Hello World"))
    }
}

fun main(args : Array<String>) {
    val c = myClass()
    val t = test()
    t.ProcessStuff(c)
}
import kotlin.reflect.full.memberFunctions
类myClass{
趣味测试(d:字符串):字符串{
返回d
}
}
课堂测试{
有趣的东西(
d:T
) {
val myClass=d.let{it::class}
var f3=myClass.memberFunctions.find{it.name==“test”}!!
println(f3.call(“你好世界”))
}
}
趣味主线(args:Array){
val c=myClass()
val t=测试()
t、 工艺材料(c)
}

您没有在实例上调用该方法(第一个参数)。它的工作原理如下:

val myClassInstance = myClass()
println(f3.call(myClassInstance, "Hello World"))

您没有在实例上调用该方法(第一个参数)。它的工作原理如下:

val myClassInstance = myClass()
println(f3.call(myClassInstance, "Hello World"))

这段代码甚至没有编译。您能发布一些有效的代码吗?修改为一个独立的Hello World代码段,在intelliJ中运行,仍然给出原始错误。很抱歉,最初可能有点太抽象了。这个代码段甚至没有编译。您能发布一些有效的代码吗?修改为一个独立的Hello World代码段,在intelliJ中运行,仍然给出原始错误。很抱歉,本来可能有点太抽象了。在本例中,实例是
d
。在本例中,实例是
d