java中一个异常处理的例子

来源:百度知道 编辑:UC知道 时间:2024/05/19 06:58:15
初学者~碰到这样一个例子~估计其中有错误~
//计算两个整数相乘
import javax. swing. JOptionPane; // program uses JOptionPane
public class Product
{
public static void main (String args [ ] )
{
String firstNumber, secondNumber;
int number1, number2, product;
firstNumber = JOptionPane. showInputDialog("输入乘数");
secondNumber = JOptionPane. showInputDialog("输入被乘数");

try
{
number1 = Integer. parseInt( firstNumber);
number2 = Integer. parseInt( secondNumber);
}
catch (NumberFormatException ex)
{
JOptionPane. showMessageDialog( null, "你在对话框中没有输入整数值", "消息", JOptionPane. ERROR_MESSAGE );
}
product = number1 * number2;
JOptionPane. showMessageDialog( null, number1+"×"+number2+"="+product, "结果", JOptionPane. INFORMATION_MESSAGE );
}
}

1.编译后说number1和number2没有初始化,这我知道,但具体在什么地方初始化比较好啊~
2.我试着在try语块上边初始化

那你 输入其他型的值会不会出现那个对话框 不报错之后呢???
你要显示什么

catch (NumberFormatException ex)
NumberFormatException 这个错误就是format number是报错的
你要想不让你报错就改这个错误类型

错误不再 catch 里面处理你说在那里处理啊?
你说说你想要的效果.
首先我测试过了 输入的数值超过int的范围 不会报错的.和输入adfsf 是一样的弹出 "你在对话框中没有输入整数值"

如果你还怕越界 你可以把 product = number1 * number2; 也放入 try catch中

你能不能看仔细点
下面还有一句呢 System.exit(0);

1、定义的时候初始化啊 int number1 = -1, number2 = -1,
product = -1;
2、

3、异常处理是有用的啊只是你没有退出方法而已

在你的 catch 里加句话
JOptionPane.showMessageDialog(null, "你在对话框中没有输入整数值", "消息",JOptionPane.ERROR_MESSAGE);
System.exit(0);

import javax. swing. JOptionPane; // program uses JOptionPane
public class Product
{
public static void main (String args [ ] )
{
String firstNumber, secondNumber;
int number1 = 0, number2 = 0, product;
firstNumber = JOptionPane. showInputDialog("输入乘数");