java 的异常捕获与处理
答案:3 悬赏:0
解决时间 2021-02-19 23:32
- 提问者网友:放荡不羁
- 2021-02-19 03:46
请问7除以0这个异常怎样捕获与处理,要求要用到try-catch-finally
最佳答案
- 二级知识专家网友:都不是誰的誰
- 2021-02-19 04:48
分母为0 会抛出运行时异常 ArithmeticException
所以捕获的方式可以这样
try {
int a = 7 / 0;
} catch (ArithmeticException e) {
System.out.println(e.getMessage());
} finally {
System.out.println("这句话每次运行总会执行");
}
代表的意思就是:如果 7/0 抛出异常,将会被相应的异常catch住,而finally中的语句最后执行
所以捕获的方式可以这样
try {
int a = 7 / 0;
} catch (ArithmeticException e) {
System.out.println(e.getMessage());
} finally {
System.out.println("这句话每次运行总会执行");
}
代表的意思就是:如果 7/0 抛出异常,将会被相应的异常catch住,而finally中的语句最后执行
全部回答
- 1楼网友:一池湖水
- 2021-02-19 07:57
闪退是没有 return 值还是什么呢!理论上代码是没有问题的,
测试代码:
控制台打印结果如下:
这个是可以 return 结果的
- 2楼网友:夢想黑洞
- 2021-02-19 06:27
这个属于运行异常,不过我们关注这个异常可以字节封装一个异常类:
class DivException extends RuntimeException
{
private String msg;
public DivException(){
super(String msg,Throwable t);
}
}
这样补货:
try{
int a = 6;
int b = 0;
int i = a/b;
}catch(Exception e){
if(b == 0){
e.printStackTrace();
throw new DivException("除数为0",e);
}
}finally{
后面的代码,其实这个属于运行时异常,建议改正之后再运行,不然你早晚会后悔的,,,,,,haha
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯