黑马程序员技术交流社区

标题: 为什么写了一个类,编译后却生成了好几个.class文件? [打印本页]

作者: 自己玩    时间: 2012-2-22 22:10
标题: 为什么写了一个类,编译后却生成了好几个.class文件?
本帖最后由 自己玩 于 2012-2-22 23:00 编辑

为什么写了一个类,但是编译后却生成了好几个.class文件? .class文件不是一个类生成一个吗?

作者: H07000223    时间: 2012-2-22 22:24
估计是因为你误以为自己只写了一个,其实下面还列了一堆~~~囧

一个.java类型的文件可以有多个类,但是只能有一个是public的,main方法也应该写在其中

这样的话,编译自然会生成多个class文件(一个class一个.class文件)
作者: 沈样    时间: 2012-2-22 22:27
我觉得一个类就一个类文件,至于你为什么多个类文件,是因为你在java程序中写了多个类的原因,一个java文件中可以写多个类,但只能写一个public的公共类
作者: 马胜平    时间: 2012-2-22 22:31
恭喜你发现了重大BUG,这是JAVA诞生以来出现了一个类编译成了多个.class文件的现象
作者: 自己玩    时间: 2012-2-22 23:00
知道了,内部类……
作者: 温昌寿    时间: 2012-2-22 23:01
你去看下老师叫反射那几章
作者: 仵先进    时间: 2012-2-23 00:08
{:soso_e127:}真没碰到过
作者: 石德志    时间: 2012-2-23 09:32
java源程序里可以有多个类,但只能有一个public类型的类,源文件的名称必须和该公共类相同,你可能写了多个类,也可能是内置类
作者: 张猛    时间: 2012-2-23 10:18
  内部类,楼主几位正解
作者: 朱皓    时间: 2012-2-23 22:48
楼主你可能在类里面定义了多个内部类,一个内部类就是一个.class文件
作者: 泮和顺    时间: 2012-2-24 15:38
ctrl+f搜下几个class 编译就会生成几个.class文件
作者: 雷楚光    时间: 2012-2-24 16:22
...... 内部可以建类啊。编译的时候JAVA再把内部类提取出来单独作为一个文件。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2