当前位置: 技术问答>java相关
一个比较easy的问题???,
来源: 互联网 发布时间:2015-03-14
本文导语: public class Foo { public void main(String args[]){ System.out.println("hello"); } } 为何编译能通过?? 运行就抛出异常??? | 编译当然能通过,如果没有main()函数,编译不会出错,即使有main()函数,但...
public class Foo
{
public void main(String args[]){
System.out.println("hello");
}
}
为何编译能通过??
运行就抛出异常???
{
public void main(String args[]){
System.out.println("hello");
}
}
为何编译能通过??
运行就抛出异常???
|
编译当然能通过,如果没有main()函数,编译不会出错,即使有main()函数,但它也是一个函数,当然也可以编译。(main函数可以和静态的main函数同名,一个是全局函数,一个是局部函数,不会有冲突,thread类中的run(),start()函数可以一样同名,但如果不使用标准用法就会失去线程的功能变成函数。)
所以你的情况可以编译,但是输出没有main()函数的异常,即没有主线程函数(static main())
所以你的情况可以编译,但是输出没有main()函数的异常,即没有主线程函数(static main())
|
没有static
compiler 把 public void main(String args[])当成成员方法而非类方法
这段代码本身没有语法错误,compiler当然就没法发现错误
compiler 把 public void main(String args[])当成成员方法而非类方法
这段代码本身没有语法错误,compiler当然就没法发现错误