클래스 용 애플릿을 만들려고합니다.숙제 예외 처리 문제
두 가지 가능한 사용자 입력 실수를 처리해야합니다. if/else 문으로 0으로 나눗셈을 처리했습니다.
그러나. 사용자가 숫자 대신 문자 나 기호를 넣으려고하면 예외를 처리하려고합니다 ... 그러나 catch 문은 문제를 포착하지 않습니다. 대신 0 else 문으로 나누기를 적용합니다. 보고가 있고 당신은 try 블록 내부에 코드의 나머지 부분을 둘 필요가
/*
* Curtis Sizemore
* IT 259 - Intermediate Java
* Unit 8
* Working with Applets
* I attest that this is a product of my own creation.
*
*/
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JTextField;
/**
*
* @author Curtis
*/
public class JDivide extends JApplet implements ActionListener
{
JTextField numer = new JTextField(5);
JTextField denom = new JTextField(5);
JLabel intro = new JLabel("Please enter two numbers.");
JLabel num = new JLabel("Numerator: ");
JLabel den = new JLabel("Denominator: ");
JLabel result = new JLabel();
JButton solve = new JButton("Click Me to Solve!");
Container con = getContentPane();
double numerator;
double denominator;
double quotient;
String n;
String d;
String q;
@Override
public void init()
{
con.setLayout(new FlowLayout());
con.add(intro);
con.add(num);
con.add(numer);
con.add(den);
con.add(denom);
con.add(solve);
con.add(result);
solve.addActionListener(this);
}
@Override
public void actionPerformed(ActionEvent e)
{
n = numer.getText();
d = denom.getText();
try
{
double numerator = Double.parseDouble(n);
double denominator = Double.parseDouble(d);
}
catch(NumberFormatException x)
{
result.setText("Numbers Only Please.");
}
if(denominator==0)
{
result.setText("Division by 0 is undefined.");
}
else
{
double quotient = numerator/denominator;
q = Double.toString(quotient);
result.setText(q);
}
}
}
이것은 질문과 관련이 없지만 이것이 데스크톱 프로그램 인 경우 JApplet을 사용하는 이유는 무엇입니까? – LanguagesNamedAfterCofee