0

所以这个程序的要点是创建一个 Rational 类,这样当你运行它时,会出现一个 GUI 输入并询问分子和分母。然后它将返回减少的分数。但我不断收到此错误消息,我不知道为什么。这是到目前为止的程序:

import javax.swing.JOptionPane;


public class lab8
{
public static void main (String args[])
{
    String strNbr1 = JOptionPane.showInputDialog("Enter Numerator ");
    String strNbr2 = JOptionPane.showInputDialog("Enter Denominator ");

    int num = Integer.parseInt(strNbr1);
    int den = Integer.parseInt(strNbr2);

    Rational r = new Rational(num,den);
    JOptionPane.showMessageDialog(null,r.getNum()+"/"+r.getDen()+" equals "+r.getDecimal());

    System.exit(0);
}
}



class Rational
{
private int num;
private int den;

public Rational()
{
    num = 0;
    den = 1;
}
public double getNum()
{
    return num;
}

public int getDen()
{
    return den;
}
 }
4

1 回答 1

2

您正在尝试调用一个不存在的构造函数。您的类构造函数什么都不要求:

public Rational()

虽然它应该要求 2 个整数:

public Rational(int num, int den){
     this.num = num;
     this.den = den;
}

所以你可以像你试图做的那样把它num和它都传递给它den

Rational r = new Rational(num,den);
于 2013-01-19T02:08:53.483 回答