0

したがって、このプログラムの要点は、実行時に GUI 入力が表示され、分子と分母を要求するように Rational クラスを作成することです。次に、削減された分数を返します。しかし、このエラー メッセージが何度も表示されますが、その理由はわかりません。これまでのプログラムは次のとおりです。

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つのintを要求する必要があります:

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 に答える