发布网友 发布时间:2022-04-24 12:13
共2个回答
热心网友 时间:2023-10-12 10:49
在总异常之前处理这些指定异常就行了。参考代码如下:
public static void main(String[] args) {
// 这是输入计算的参数,可以从自己写或者前台传,这里写死
Integer a = 2;
Integer b = 1;
try {
double cc = b/(double)a; //这样才能计算小数,不会报除0错误
System.out.println("cc:"+cc);
} catch (NullPointerException e) {
System.out.println("空指针异常");
}catch (ArithmeticException e) {
System.out.println("计算异常");
}catch (Exception e) {
System.out.println("其他异常");
e.printStackTrace();
}
}追问这个代码没能在同一个地方处理异常啊,再就是想问一下,一个try语句能不能抛出多个异常?如果能,那能不能同时捕获这些多个异常啊?
追答不明白为什么要在同一个地方处理异常,不然你只捕获最大的异常,然后在catch块里面判断是不是空指针或者计算异常,然后再进一步做处理,而其他异常就放过。
热心网友 时间:2023-10-12 10:49
给一下分,马上解决。