java运行时异常和编译器错误
在下面的代码中,当我更改返回类型时,它没有给出编译器错误,只是抛出运行时异常。这不是syntex错误,给出了错误的返回类型long而不是voidjava运行时异常和编译器错误,java,exception,Java,Exception,在下面的代码中,当我更改返回类型时,它没有给出编译器错误,只是抛出运行时异常。这不是syntex错误,给出了错误的返回类型long而不是void class Jfilestr { public static long main(String[] args) { System.out.println("Hello"); return 10L; //It will give the runtime exception.
class Jfilestr {
public static long main(String[] args) {
System.out.println("Hello");
return 10L;
//It will give the runtime exception.
/*Error: Main method must return a value of type void in class Jfilestr, please
define the main method as:
public static void main(String[] args)*/
}
}
你的问题是
public static void main(String[] args) {}
在Java中起着特殊的作用。它是启动Java应用程序的入口点。从技术上讲,您可以创建所描述的方法,但不能作为入口点。这种情况经常发生,运行时会检测到错误并告诉您所做的事情
您不能从入口点方法返回值。如果输入正确的返回类型,即
void
,会出现什么错误?请注意,当方法为void
时,当然不能返回值。错误非常简单:main
方法必须返回void。句号。主方法应具有void
返回类型。错误消息正告诉您需要执行的操作=)我明白您的意思。java调用指定了该类,它足够智能,可以检测无效的main。我会更新我的答案。谢谢