正确使用Exception异常处理

错误有两种。

一种是非运行时的,只能在开发阶段出现的。这需要让程序挂掉,解决掉问题才能继续运行。程序真正运行的时候是不能有这种情况的。这里就是用断言的地方。判断清楚在什么时候使用断言而不是返回错误提示很重要。一般我觉得,使用断言的地方,就是没有什么好讲的了,不应该不对,必须要对,错了必须改的地方,或者你觉得错了很low逼的问题。

一种是运行时的。这种错误是可预见的,是被逻辑判断预先捕捉到的。比如资源错误,各种等待超时,数据错误等。这需要给出提示,然后能继续运行就继续,不能的就安全退出。这里用异常捕捉或返回错误码接着后续处理。

在使用异常捕捉或返回错误码的时候,有个问题需要思考清楚。就是把问题就地处理掉,还是继续抛到上层,交给函数调用者处理。有些情况,函数调用者有特殊的处理方式,异常抛出更好。有些情况在比较高内聚的模块内的,功能实现和外界依赖关系小的,模块内自己处理掉更好。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值