public class For2是这个public

解决方案 »

  1.   

    如果你贴出的代码是在一个单独的、名为For2.java的文件中
    则不会出现编译错误
    因此我怀疑你的代码所在的java文件还有另一个public的class
      

  2.   

    to zcjl() 
    我是把它放在一个文件,但是这个文件里面只有一个for2.java的文件!
      

  3.   

    请注意你的文件名与类名:如果文件名是for2.java,而类名是For2.java,注意,“f”一个是大写一个是小写。那么可以编译,但执行时可能有问题。至于什么时候出问题,还取决于你用什么方式进行编译执行:比如命令行、EditPlus、或是JBuilder等。环境不一样出现的问题也不一样
      

  4.   

    java严谨的区分大小写的
    请保证这个源代码文件的名字与public的类名相同
      

  5.   

    我试了一下,还真可能是大小写的问题:
    我将你的程序原封不动,写在for2.java里,编译报错
    for2.java:1: class For2 is public, should be declared in a file named For2.java
    public class For2
           ^
    1 error去掉public则编译通过(这样解决大小写问题的方式我还是第一次知道,-_-#)
    如果楼主编译报错跟上面类似的话,那么恭喜你,问题解决了
    以后要时刻注意java程序的大小写问题,否则可能会有莫名其妙的bug出现
      

  6.   

    1.如果java文件中有且只有一个public类,那么文件名和类名相同。
    2.java是大小写敏感的,所以要时刻注意大小写的问题。
      

  7.   

    因为文件名应该和public类的名字一样,
      

  8.   

    ...............
    能问下各位兄弟都用什么编译器吗?
    我的JDK1.4.2怎么会这样
    类名我用小写竟然编译过去了
    生成的CLASS文件名字竟然是大写的
    谁碰见过这种问题?