我把a$1.class,a$2.class这些文件删除后,程序不能运行了。我用源码重编译了a.java生成a.class后替换jar包下的类文件后,修改的内容也没有体现出来。会不会跟这些a$1.class文件有关?

解决方案 »

  1.   

    .Class 文件是由java文件翻译过来的, 你所述的 a$1.class 不能确定是那个java文件编译而来, 不好确定问题的所在.
      

  2.   

    我项目里有个类叫aaaaa.class,我看到原来部署的那个jar包里有aaaaa$1.class,aaaaa$2.class,aaaaa$3.class,aaaaa$4$1.class,aaaaa$5$3.class,我不知道这些文件有什么用。但是我肯定这些文件都是aaaaa.java生成的,因为名字很类似
      

  3.   

    a.class,a$b.class,表示 b类是a类的内部类,代码:class a{
        .....a类代码
        class b{    }
      

  4.   

    如果是 Xxxx$Yyyy 的话就是有名字的内部类,如果是 Xxxx$1, Xxxx$2 的话就是没有名字的内部类,也就是匿名内部类。