gpt4 book ai didi

kotlin - 我在 Kotlin KClass 中看不到私有(private)成员

转载 作者:行者123 更新时间:2023-12-01 01:40:34 24 4
gpt4 key购买 nike

我正在开发一个使用反射的库,我想操作给定 KClass 的所有属性/函数。

使用 KClass::members属性,我可以操作所有可访问的成员(根据文档),即:公共(public)、内部和 protected 字段、属性和函数。但我看不到私有(private)的。

使用 Java 反射,我可以使用 Class.getDeclaredFields() 查看所有字段(包括私有(private)字段) , 同样我可以看到使用 Class.getDeclaredMethods() 的私有(private)方法.

有没有办法使用 kotlin 反射 API 来做到这一点?

最佳答案

是的,您可以使用 declaredMembers , declaredFunctions , 和 declaredMemberProperties ,它将包括私有(private)成员,但不包括在父类(super class)型中声明的成员,就像 Java 反射 API 一样。

关于kotlin - 我在 Kotlin KClass 中看不到私有(private)成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58098741/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com