Java Class 文件的命名

The naming of Java Class file

我正在了解 Java Class 文件。我知道当 Java 源文件 (Source.java) 被编译时,我们得到 Source.class 文件。如果这个 Source.java 包含一些内部接口,我们将得到 Source.class 和 Source$inner-interface.class。正如 link:

中所解释的那样,这是可以理解的

http://javarevisited.blogspot.com/2012/05/10-points-about-class-file-in-java.html

然而,让我感到困惑的是,有时我得到的不止于此:

来源$1.class

来源$1$1.class

来源$1$2.class

来源$inner-interface.class

这些 Source$1.classSource$1$1.class 在哪里来源$1$2.class从何而来?这些 $1, $1$1, $1$2 是什么意思?它们与源文件中的静态变量有什么关系吗?

谢谢!

那些是在主 class 中定义的匿名内部 classes。