对于简单Java文件(返回类型INT),没有此类方法错误



我有以下简短程序,编译了Fine(编写并编译在Linux框中)。如果我使用公共静态void main(string [] args)并摆脱返回4;声明它编译并运行正常。使用返回类型,我会收到以下错误(在构建时不在运行时):

我确实必须为此应用程序返回int,我不能使用void类型。

-java helloworld

线程"主线程" Java.lang.nosuchmethoderror中的例外:main

文件名是helloworld.java(构建后的helloworld.class)。

是什么原因导致了这个问题?谢谢!

我尝试了更改,例如第二次}之后的结肠,更改为int main,public int main,static int main,用大写的第一字母写下主字母和字符串,似乎什么都没有解决。我正在使用字符串[] args,因为我将在最终应用程序上拾取参数。

public class HelloWorld 
{
public static int main(String[] args) 
{
System.out.println("Hello, World");
return 4;
}
}

Java不是C,入口点必须具有void返回类型。

public static void main(String[] args) 

要将非零值返回到调用过程中,您可以使用System.exit(int)

System.exit(4);

请注意,(根据Javadoc)该参数用作状态代码;按照惯例,非零状态代码表示异常终止。

尝试使用public static void main,而不是返回值

在Java语言中,当您使用Java解释器执行类时,运行时系统首先调用类的Main()方法。Main()方法的签名无法更改,以执行必须为publicstatic不返回任何内容并接受字符串Arrys String[]

public static void main(String[] args){}

希望它有帮助,

Jose Luis

main()在类级别的运行时调用,因此必须 publicstatic。同样,在C 中,main()的返回值通常用于指示程序的退出状态。在Java中,还有其他方法可以做到这一点,而main()不需要返回值。因此,它也需要是void

通常以C和C main等语言返回int来指示退出代码,例如。0用于成功退出,任何其他数字都以获取错误。这是一个外部程序可以解释运行的结果。

要在Java中实现类似的功能,您需要使用System.EXIT允许返回值。类似:

public static void main(String[] args) { int toReturn = 1; System.exit(toReturn); }

您知道,大多数标准都要求您遵守以下想法:零以外的任何事物都是错误。

相关内容

最新更新