私はhttp://mooc.cs.helsinki.fi/のオンラインJavaコースを行っていて、エラーが発生しました。その周りに私の道を見つけることができません。NoSuchMethodError void vs int
public class NumberStatistics {
private int count;
private int sum;
public NumberStatistics(){
this.count=0;
this.sum=0;
}
public void addNumber(int number){
this.count++;
this.sum+=number;
}
public int amountOfNumbers(){
return this.count;
}
public int sum(){
return this.sum;
}
public double average(){
if(this.count==0||this.sum==0){
return 0;
}
return (double)this.sum/this.count;
}
}
と私はそれを実行しようとすると、これはメインファイル
public class Main {
public static void main(String[] args) {
NumberStatistics stats = new NumberStatistics();
stats.addNumber(3);
stats.addNumber(5);
stats.addNumber(1);
stats.addNumber(2);
System.out.println("Amount: " + stats.amountOfNumbers());
System.out.println("sum: " + stats.sum());
System.out.println("average: " + stats.average());
}
}
あり、それは私が変更した場合はエラー
Exception in thread "main" java.lang.NoSuchMethodError: NumberStatistics.addNumber(I)I
at Main.main(Main.java:8)
が付属しています
public void addNumber
へ
public int addNumber
戻り値。このメソッドは特定の名前(void)を持たなければならないため、サーバーは正常に処理されますが、サーバーでは受け入れられません。何が問題ですか?道に迷いました。
P.S.私はちょっと手を加えたし、今働いているようだ。コードを変更しませんでした。それが何を失敗させたのか分からない...それを調べようとする。あなたのご意見ありがとうございます。
'Main'クラスを再コンパイルしていません。 IDEまたはビルドツールを使用する場合、コンパイルが必要なものはすべて再コンパイルされます。 –
NetBeans 8.2 – Aleks
を使用してプロジェクトをクリーンアップします。 –