A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 不抛弃不放弃 于 2013-11-14 19:06 编辑

编译包含有内部类的类文件之后,发现生成的.class文件名称不好理解,例如下面的Outer类:
                   public  class Outer{
                         String str="Outer类str";
                         public  void getName(){
                                  class Inner{
                                      String str= "Inner类str";
                                         }
                          }

      }
编译后生成两个.class文件:Outer.class 和Outer$1Inner.class  这第二个名称应该怎么理解?

3 个回复

正序浏览
qq379264347 发表于 2013-11-14 18:25
具体深究也没啥用。
Outer.class是文件名字的主类。
Outer$1Inner.class的意思是说在Outer类中有一个内部类 ...

亚希 回答比较准确
回复 使用道具 举报
带有内部类的类编译时,内部类也会生成一个相应的.class文件,Outer$1Inner.class就是你定义内部类生成的字节码.class文件啊
回复 使用道具 举报
具体深究也没啥用。
Outer.class是文件名字的主类。
Outer$1Inner.class的意思是说在Outer类中有一个内部类Inner,而这个Inner在“1”方法内,位置没在主类内部,而在某方法的内部。

评分

参与人数 1技术分 +1 收起 理由
FFF + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马