java - 如何获得内部类反射
问题描述
我有一个像
package example.com
class TContract : Contract {
interface Commands : CommandData {
class TIssue(val reference: State) : Commands
}
}
如何获取 TIssue 的类反射。我试过Class.forName("example.com.TContract.Commands.TIssue")
了,但它不起作用!
解决方案
内部类将被编译,类文件将是ClassName$InnerClassName
. 请参阅:https ://stackoverflow.com/a/11388863/1048340
您需要在 Kotlin 中转义美元符号字符。以下将起作用:
Class.forName("example.com.TContract\$Commands\$TIssue")
推荐阅读
- bash - 试图找到 shell 命令以从文件中删除 2 个文件之间的公共行
- wxwidgets - wxHtmlWindow LoadFile 不在 wxFrame 中显示
- ruby-on-rails - 如何在rails(postgres)查询中参数化日期范围?
- jquery - Jquery ajax webmethod vs webservice webmethod?
- ios - 使用 UISearchController 将 UISegmentedControl 放在 NavigationBar 中的标题下方
- angular - Angular 全局错误处理 - 指定发生错误的模块
- javascript - 如何在javascript中将数组的元素增加所需的值?
- ios - Firebase 错误:必须在使用 FIRDatabase 实例之前调用 setPersistenceEnabled
- python-3.x - Python内存地址
- python - 根据目标数据集查找数据集中最接近的数字