【发布时间】:2012-08-15 08:23:17
【问题描述】:
是否有类似于 javap 的工具可以显示方法和字段及其原始(非擦除)类型?
我知道编译源代码时类型信息是erased。但是,编译器必须以某种方式知道,因为即使库已经编译到类文件中,它也能够确定我对库方法的调用是否匹配它们的签名。所以至少在理论上,应该可以检索到类型信息。
我进一步搜索并找到了这个答案: Where are generic types stored in java class files? 这向我指出了getGeneric...() 方法。所以在我看来,类型信息以某种复杂的方式存储在类文件中,这些方法允许获取它。但到目前为止,我还没有找到可以显示此信息的(命令行)工具。
【问题讨论】:
-
由于
javap是一个命令行工具,似乎不能满足您的需求,您需要更准确地指定您的标准。 -
@BenSchulz 我相信我做到了:...工具...可以显示具有原始(未擦除)类型的方法和字段?