“线程中的异常”;“主要”;Java.lang.NoSuchMethodError:main?

“线程中的异常”;“主要”;Java.lang.NoSuchMethodError:main?,java,Java,这段代码正在编译,但当我们试图执行它时,它给出了“Exception in thread”main“Java.lang.NoSuchMethodError:main”函数应该这样声明 import java.io.*; import java.lang.Math; class Squr { public static void main () { int m =10,n; double z = 10.4,p; Squr square = new Squr();

这段代码正在编译,但当我们试图执行它时,它给出了“Exception in thread”main“Java.lang.NoSuchMethodError:main”

函数应该这样声明

import java.io.*;
import java.lang.Math;
class Squr
{
  public static void main ()
  { 
   int m =10,n;
   double z = 10.4,p;
   Squr square = new Squr();
   p = (double)square.mysqrt(z);
   n = (int)square.mysqrt(m);
   System.out.println ("square root of 10 : " + n );
   System.out.println ("square root of 10.4 : "+ p );  
  }
    double mysqrt (double y)
   {
     return Math.sqrt(y);
   }
   int mysqrt (int x)
   {
     return (int)Math.sqrt(x);
   }

}

Java中
main
方法的正确方法签名为:

public static void main(String[] args)
只需在方法声明中添加缺少的参数,它就会起作用。

试试:
看起来您没有使用正确的签名定义主方法。应该是:

public static void main(String [ ] args)
main()方法应该是这样的

public class Squr
{
  public static void main(String[] args)


Java是一种强类型语言。您必须以给定的方式声明该方法。 定义main()方法的正确方法是:

public static void main(String... args)

上面两个建议公共静态void main(String args[])和公共静态void main(String[]args)运行良好,但第三个建议不起作用……应该可以。它对我有用。这里是演示注意,第三个选项只有在使用Java 5+时才会编译,正如引入varargs(…)表示法时一样。请(密切)注意错误消息和完整类型签名。快乐编码。这个社区维基问题列出了这个常见问题的可能原因:已经有5个几乎相同的答案。你能指出你答案中的新内容吗?你不能评论一下其他的帖子吗?如果你同意另一篇文章,请投赞成票,但不要重复,尤其是3个月后。非常感谢。
public static void main(String args[])
public static void main(String[] args)
public static void main(String... args)
public static void main (String[] args)