我正在尝试检测一个类文件,但我只是想知道注释以类文件格式存储在哪里。我尝试将它们放在接口表中,但是当我这样做时,它只将它们识别为接口而不是注释。
答案 0 :(得分:4)
它们存储在类的RuntimeVisibleAnnotations
和RuntimeInvisibleAnnotations
属性以及方法类成员中,以及方法的RuntimeVisibleParameterAnnotations
和RuntimeInvisibleParameterAnnotations
属性中参数。您可以在Java VM Specification中找到有关类文件格式的更多详细信息。
答案 1 :(得分:0)
当试图理解Java字节码时,一个好的起点是在普通Java中编写您想要使用字节码创建的类。编译它,然后使用工具检索生成的字节码。
以下是我能想到的一些工具:
main
方法,可以让它轻松运行)Show bytecode
查看