1. ホーム
  2. java

[解決済み] コンパイルエラーです。メソッドの戻り値の型がありません

2022-02-12 10:04:20

質問

public class StoreRatioNumberClass
{
 private int num;
 private int den;

public RationalNumber() //here
{
  num = 0;
  den = 1;
}
public RationalNumber(int newNum, int newDen) //and here, but it gives me 3 separate errors for it//
{
   num = newNum;
   den = newDen;
   simplify();
}
private void simplify()
{
  int gcd = gcd();
  finalNum = num/gcd;
  finalDen = den/gcd;
}


private static int gcd(int a, int b) 
{
    if (b == 0)
        return a;
    else
        return gcd(b, a % b);

}

public double getValue()
{
  return (double)num/den;
}

public String toString()
{
  return(num + "/" + den);
}

}

私の質問は、この7行目 & 11行目のコンパイルの問題をどのように解決すればよいのでしょうか?このクラスは、ここに示されていないmainメソッドクラスで入力された分子と分母を受け取り、有理数をGCDで単純化するものです。また、return型を入れると、さらにエラーや警告が出るので困っています。見ていただいて、たくさんのご意見をありがとうございました。

解決方法は?

コンストラクタでクラス名を使用する必要があります。

public StoreRatioNumberClass(int newNum, int newDen) {
       //...

そうしないと、コンパイラはあなたがメソッドを宣言しようとしていると勘違いして、明らかに足りない戻り値の型について混乱してしまいます。