问题描述
_17_A.java
package _z_additional;
public class _17_A {
private int x = 0;
public int getX() {
return x;
}
public void setX(int x) {
this.x = x;
}
}
我正在尝试使用以下Kotlin代码(和Kotlin反射)获取类_17_A
中的java字段的访问器实例
_17_ObtainingJavaAccessors_Test.kt
package _z_additional
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.TestInstance
import java.lang.reflect.Method
import kotlin.reflect.KClass
import kotlin.reflect.full.declaredMemberProperties
import kotlin.reflect.jvm.javaGetter
import kotlin.reflect.jvm.javaMethod
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
object _17_ObtainingJavaAccessors_Test {
@Test
fun demonstrate() {
val cls: KClass<*> = _17_A::class
cls.declaredMemberProperties.forEach {
val getter1: Method? = it.javaGetter
val getter2: Method? = it.getter.javaMethod
println("getter1 = ${getter1}")
println("getter2 = ${getter2}")
}
}
}
getter1 = null
getter2 = null
问题是我得到null
s
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)