一般情况下一个Java文件代表一个类,在编译时会产生一个字节码.class文件。但是在Java中 一个源文件中可以包含多个类,但是只能有一个public类,其他的都成为内部类,这时编译时会生成多个字节码文件。一个是那个public类也是该源文件名对应的.class 另一个就是public类名$内部类名.class
取决于你的java源文件中有几个类,在一个源文件中你用class关键字定义了几个类,编译的时候就会产生几个字节码文件。