想问一个普遍通用的问题,请问异常处理时
在什么情况下,应该抛出让外部调用者去处理异常?
在什么情况下,应该由自己处理异常?
以python为列:
···python
<code>try: 异常语句 except Exception as e: print e #自己处理异常 raise #让调用者处理异常 </code>
想问一个普遍通用的问题,请问异常处理时
在什么情况下,应该抛出让外部调用者去处理异常?
在什么情况下,应该由自己处理异常?
以python为列:
···python
<code>try: 异常语句 except Exception as e: print e #自己处理异常 raise #让调用者处理异常 </code>
对于你问的问题,实际上是一个异常处理策略的问题。至于以何种语言为例,道理都是一致的。说说我的看法:
这个不是看情况吗。如果 Exception 出现的概率比较大,而且是可以预测的(比如文件无法打开,输入不符合要求之类的),当然就就地解决了,这类异常往往不能算真的“异常”,也是系统功能的一部分。如果是不可以预测的其他异常就 raise 好了。
这个取决于你需要在哪一级处理这个异常