请选择 进入手机版 | 继续访问电脑版

湖南新梦想

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 175|回复: 0

异常

[复制链接]

58

主题

58

帖子

375

积分

中级会员

Rank: 3Rank: 3

积分
375
发表于 2022-11-24 20:28:35 | 显示全部楼层 |阅读模式
异常处理:
1.tay{
// 可能产生的异常
}catch(异常类型){
//捕获异常
}
第一种情况:正常(try->忽略catch块 继续执行后面代码)
第二章情况:出现异常(try - > catch - > 后面代码)
第三种情况:异常类型不匹配(try - > catch类型不匹配 - > 中断运行)
2.tay{
// 可能产生的异常
}catch(异常类型){
//捕获异常
}finally{
//不管是否发生异常,都会执行,一种情况执行了System.exit(1);不会执行finally
}
注意事项:

1) 处理异常,进行修复以让程序继续执行。例如在进行数据库查询时,数据库连接断链后重新链接成功。

2) 在对异常进行分析后发现这里不能处理它,那么重新抛出异常,让调用者处理。异常依次向上抛出,如果所有方法都不能恰当地处理异常,最终会在用户以恰当的方式提示用户,由用户来判断下一步处理措施。例如在进行数据库查询时,断链后重试几次依旧失败的情况。

3) 将异常转换为其他异常再抛出,这时应该注意不要丢失原始异常信息。这种情况一般用于将底层异常封装为应用层异常。

4) 不要捕获异常,应在函数定义中使用throws声明将抛出该异常,让调用者去处理该异常。

5) 因此,当捕获一个checked Exception的时候,必须对异常进行处理;如果认为不必要在这里作处理,就不要捕获该异常,在方法体中声明方法抛出异常,由上层调用者来处理该异常。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|湖南新梦想 ( 湘ICP备18019834号-2 )

GMT+8, 2023-10-1 04:28 , Processed in 0.042168 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表