【发布时间】:2012-08-12 11:07:40
【问题描述】:
我正在通过终端在 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;
}
}
}
我从 main 方法中删除了“静态”,因为我正在调用 checkMod 方法。
如何正确编码?
谢谢
【问题讨论】:
-
你用什么命令从终端运行类?
-
mac:Java 名称$javac Problem5.java mac:Java 名称$java Problem5
-
你为什么要使用终端。而是使用 Eclipse 或 Netbeans。
-
将主方法声明为静态并调用带有对象的 checkmod 方法,因为您不能从静态方法调用非静态方法..
-
return count == 19;更具可读性(恕我直言)