首页 > 解决方案 > (ClassName)$.class files in class folder? (Netbeans)

问题描述

I went ot go look at my class folder today to submit a project when I stumbled across duplicate classes. For example my class would be called MainPro.class and there would be duplicates such as MainPro$1.class, MainPro$2.class etc.

It's for a GUI project that uses java.swing

I'm unsure of what these are and am too afraid to delete it incase it ruins my coursework.

Thanks.

标签: javafilenetbeans

解决方案


它们是匿名类的类文件。例如,如果你写

  Foo = new Foo() {
       ....
  }

那就是定义一个扩展类 Foo 但没有名称的类。编译器将根据定义出现的文件名以及美元符号和数字创建一个类文件。

“MainFile$N”类可能还有其他原因,但这是一个例子。

它们是在您编译 Java 源代码时创建的。它们是执行程序所必需的,但与任何 .class 一样,它们将在下一次编译定义它们的文件时重新生成(在您的情况下为 MainPro.java)


推荐阅读