Java 编译错误:缺少方法的返回类型

Java 编译错误:缺少方法的返回类型,java,Java,我的问题是如何解决第7行和第11行的编译问题?这个类接受在这里没有显示的主方法类中输入的分子和分母,并用GCD简化有理数。而且,当我输入一个返回类型时,它只会出现更多的错误和警告,所以我被难住了!感谢您的查找和所有输入。您的RationalNumber方法不会声明返回类型。您使用的表单仅允许构造函数使用。如果将两个方法的名称都更改为StoreRatioNumberClass(即,使方法名称与类名匹配以使它们成为有效的构造函数),则编译器错误应该消失。您需要在构造函数中使用类的名称: public

我的问题是如何解决第7行和第11行的编译问题?这个类接受在这里没有显示的主方法类中输入的分子和分母,并用GCD简化有理数。而且,当我输入一个返回类型时,它只会出现更多的错误和警告,所以我被难住了!感谢您的查找和所有输入。

您的
RationalNumber
方法不会声明返回类型。您使用的表单仅允许构造函数使用。如果将两个方法的名称都更改为
StoreRatioNumberClass
(即,使方法名称与类名匹配以使它们成为有效的构造函数),则编译器错误应该消失。

您需要在构造函数中使用类的名称:

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);
}

}
否则,编译器会认为您将要声明一个方法,并对缺少的返回类型感到困惑,显然

您将类命名为StoreRatioNumberClass,如下面的类声明所示

public StoreRatioNumberClass(int newNum, int newDen) {
       //...
我相信您是在试图为这个类定义构造函数,就像编译器抱怨的那样。构造函数必须与类具有相同的名称,否则,它们将被解释为方法名称(例如
simplify
)。但是,这些错误的方法定义缺少其返回类型

改变

public class StoreRatioNumberClass


您的类称为
StoreRatioNumberClass
public RationalNumber() //here
public StoreRatioNumberClass() //here