所以这个问题相当简单,我觉得这是一个愚蠢的问题。
当我运行我的程序时,正在生成许多重复的类。特别是JFrame类。如果我查看我的build / packagename / classes /目录,我会看到JFrameClassName.class,后面是几个标记为JFrameClassName $ 1.class,JFrameClassName $ 2.class,JFrameClassName $ 3.class等的类重复项。
主JFrame类具有正确的文件大小。他们的副本似乎只有1KB,但它们不是空的。我不是在这里要求一个具体的解决方案,我只想知道可能导致这个问题的可能问题是什么。如果有人可以提供帮助,我会非常感激。 感谢
答案 0 :(得分:5)
他们是匿名的内部阶级。
更准确地说,您将看到一个主类文件,以及每个匿名内部类的子文件。
答案 1 :(得分:1)
这是来自主类的类,例如:
package test;
public abstract class Test {
abstract void getA();
private class SubTest {
// Inner class
Test test = new Test() {
@Override
void getA() {
}
};
}
}
在主要课程Test
中,还有SubTest
和
new Test() {
@Override
void getA() {}
};
它们都保存在不同的文件中。