の範囲外の値を入力した場合、私はこれについて苦労しています。 JOptionPaneを使用して入力を行いたい場合、ユーザーが4より大きい数値を入力すると、私が作成したInvalidChoiceExceptionが取得されます。これは重複かもしれないが、私は答えを見つけることができない場合は、私を許してください。誰かが助けてくれることを願います。Javaユーザーがnumber = User Defined Exception JOptionPane
テストクラス
import javax.swing.JOptionPane;
public class RunThisSh {
public static void main (String [] args){
ExceptionTest c = new ExceptionTest();
try {
c.process(5); //I want to make this an INPUT in JOptionPane where if the user Enters a number greater than 4
// It will display an error
//JOptionPane.showInputDialog("Enter a Number: ");
} catch (InvalidChoiceException e) {
JOptionPane.showMessageDialog(null,"ERROR!");
}
}
}
これは他のクラスです。
InvalidChoiceExceptionクラス
//TEST PROJECT
public class InvalidChoiceException extends Exception {
private double choice;
public InvalidChoiceException (double choice)
{
this.choice = choice;
}
public double getChoice()
{
return choice;
}
}
ExceptionTestクラス
//TEST PROJECT
public class ExceptionTest
{
Object process;
public void process (double choice) throws InvalidChoiceException
{
if (choice > 4)
{
throw new InvalidChoiceException(choice);
}
}
}
あなたの例外クラスは選択フィールドを持つべきではなく、スーパーコンストラクタを呼び出してStringを渡す必要があります。物事は後方に配線されています。例外に関するチュートリアルに進んでください。 –
IllegalArgumentExceptionをスローしてキャッチしてから、カスタム例外を作成するのではなくcatchブロックで何をしてみてください。 – smitty1
@ smitty1私の教授が私に言ったので。それは事例研究のためであり、彼は教えさえしませんでした。 – eLjA