什么异常?输出来看看
大概又是找不到class Foo

解决方案 »

  1.   

    main必须是static的。
    改成public static void main(String[] args)就可以了。
      

  2.   

    怎么现在都是foo的。呵呵 pf pf
      

  3.   

    可以执行的main方法有如下形式:
    public static void main(String args[]){
      ....
    }
    少了static,程序认为是自己定义的方法。
      

  4.   

    应该是
    public class Foo
    {
    public static void main(String args[]){
    System.out.println("hello");
    }
    }
      

  5.   

    main只有两种写法
    public static void main(String args[]){
      ....
    }
    public static void main(String[] args){
      ....
    }
    args可用其他变量名替换,其他一概不能改。
      

  6.   

    我也知道少static ,我是想知道,为什么没有static ,还能正常编译。。
      

  7.   

    编译当然能通过,如果没有main()函数,编译不会出错,即使有main()函数,但它也是一个函数,当然也可以编译。(main函数可以和静态的main函数同名,一个是全局函数,一个是局部函数,不会有冲突,thread类中的run(),start()函数可以一样同名,但如果不使用标准用法就会失去线程的功能变成函数。)
    所以你的情况可以编译,但是输出没有main()函数的异常,即没有主线程函数(static main())
      

  8.   

    没有static
    compiler 把 public void main(String args[])当成成员方法而非类方法
    这段代码本身没有语法错误,compiler当然就没法发现错误
      

  9.   

    编译当然能通过,如果没有main()函数,编译不会出错,即使有main()函数,但它也是一个函数,当然也可以编译。(main函数可以和静态的main函数同名,一个是全局函数,一个是局部函数,不会有冲突,thread类中的run(),start()函数可以一样同名,但如果不使用标准用法就会失去线程的功能变成函数。)
    所以你的情况可以编译,但是输出没有main()函数的异常,即没有主线程函数(static main()) 
    改成public static void main(String[] args)就可以了。 
      

  10.   

    java 的application程序中  main必须声明为static的。
    改成public static void main(String[] args)就可以了。 试一试?
      

  11.   

    例如:
    public class Foo
    {
    public void main(){
    System.out.println("hello");
    }public class bb
    {
    public static void main(String args[]){
    Foo  f1;
    f1.main();
    }
    }注意要分成二个.java 文件,因为一个.java 文件只能包含一个顶级public class
    运行 java bb
    可以输出 hello
    上面提到的thread也一样。