今天讲一下.java文件经过编译后产生的.class文件名。
1、继承类、实现接口我们最常看到的就是跟.java同名,比如Test.java,编译后的生成的文件就是Test.class。
如果类里没什么特殊关系(内部类等),都是这种情况,即使有继承、实现接口,也是这样。
Test类中定义了一个内部类TestA,然后在内部类TestA的内部再定义一个内部类TestAA,那么编译后就会有三个文件,分别:Test.class、Test$TestA.class、Test$TestA$TestAA.class。
3、匿名内部类Test类中定义了一个匿名内部类,将会生成两个文件:Test.class、Test$1.class。
因为没有名字,所以用数字代替了,有多个的话,就是按照定义的匿名内部类顺序依次增加的。
就是这种:
public class Test{
}
class TestA{
}
生成两个文件Test.class和TestA.class。



