首页 新闻 会员 周边

刚看了一篇文章说是可以集中处理“未处理的异常”,那么,try catch 还有要用吗?

0
[已解决问题] 解决于 2017-06-12 12:09

因为我发现,无论我用不用 try catch 效果都一样

可是我爱你啊的主页 可是我爱你啊 | 初学一级 | 园豆:130
提问于:2017-06-10 17:01
< >
分享
最佳答案
0

是  未处理   的异常

奖励园豆:5
吴瑞祥 | 高人七级 |园豆:29449 | 2017-06-10 19:11

那 try catch 算不算 处理异常?不好意思,我比较白

可是我爱你啊 | 园豆:130 (初学一级) | 2017-06-12 11:27

@丑拒: 算.但如果你的处理是直接吃掉.啥也不操作.或者啥也不操作直接返回.

就不算.

吴瑞祥 | 园豆:29449 (高人七级) | 2017-06-12 11:29

@吴瑞祥: 就是说,我写了try catch但是没有进行处理,还是算未处理的异常对吗?

可是我爱你啊 | 园豆:130 (初学一级) | 2017-06-12 11:31

@丑拒: 就是字面意思.未处理.

不要想些有的没的.乱了就冷静一下.你只要想明白:未处理

就行了

吴瑞祥 | 园豆:29449 (高人七级) | 2017-06-12 11:34
其他回答(2)
0

个人觉得异常分为可预期和非可预期,可预期的异常就应该在某一处try catch处理掉,那么是否要向上抛呢?主要看是否这个异常是否可允许?比如网络连接的封装,错误就不一定要往上抛了

TCG2008 | 园豆:1150 (小虾三级) | 2017-06-10 18:18

谢谢

支持(0) 反对(0) 可是我爱你啊 | 园豆:130 (初学一级) | 2017-06-12 12:09
0

能处理的尽量提前处理,不能处理的往上抛。

比如查找某条数据不存在,可以抛给界面,让用户知道。如果直接抛到处理全局异常的函数,拿到这个消息都没法比显示到界面,只能写条日志。

比如读取一个非重要配置,格式错误 可以try catch之后使用默认值。你抛到上面去,整个程序因为配置失败而无法运行。

刀是什么样的刀 | 园豆:910 (小虾三级) | 2017-06-10 20:07

谢谢

支持(0) 反对(0) 可是我爱你啊 | 园豆:130 (初学一级) | 2017-06-12 12:09
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册