java编译器对编译后class以及其内部变量的命名规则是什么?

如果一个类中有内部类/嵌套类,则会生成很多类似Object$1的文件,甚至还有Object$1$sth,如果使用javassist这类lib分析class还很容易取到field$1这样命名的field。
关注者
8
被浏览
2431
楼主是想问那些$是怎么来的对吧。
对应的Java语言规范的规定在这里:Chapter 13. Binary Compatibility
  • The binary name of a member type (§8.5, §9.5) consists of the binary name of its immediately enclosing type, followed by $, followed by the simple name of the member.