Java NoSuchMethodError:main

sta*_*Err 0 java macos

我正在通过终端在OS X上学习Java.当我编译下面的代码时,我没有得到任何错误但是当我尝试运行它时,我得到了

线程"main"中的异常java.lang.NoSuchMethodError:main

我的代码:

public class Problem5{
public void main(String[] args) {
    int n = 1;
    while(!checkMod(n)){
        n++;
    }

}
public boolean checkMod(int in)
{
    int count = 0;
    for(int i=1; i<20; i++)
    {
        if(in%i == 0)
        {
            count = count + 1; 
        }
    }
    if(count ==19)
    {
        return true;
    }
    else{
        return false;
    }
}
}
Run Code Online (Sandbox Code Playgroud)

我从main方法中删除了"static",因为我调用了checkMod方法.

我该如何正确编码?

谢谢

Mad*_*mer 5

每个可执行Java程序至少需要一个实现的类public static void main(String args[])才能运行.

而然后除去static从参考main,无论是

添加staticpublic boolean checkMod(int in)iepublic static boolean checkMod(int in)

要么

checkMod从实例级别调用该方法.

public class Problem5{
    public void main(String[] args) {
        new Problem5();
    }

    public Problem5() {
        int n = 1;
        while(!checkMod(n)){
            n++;
        }

    }

    // Rest of code...
}
Run Code Online (Sandbox Code Playgroud)