Ruby处理多个异常
示例
您可以在同一rescue声明中处理多个错误:
begin #可能失败的执行 rescue FirstError, SecondError => e #如果发生FirstError或SecondError则执行某些操作 end
您还可以添加多个rescue声明:
begin #可能失败的执行 rescue FirstError => e #如果发生FirstError则执行某些操作 rescue SecondError => e #如果发生SecondError则执行某些操作 rescue => e #如果发生StandardError则执行某些操作 end
rescue块的顺序是相关的:第一个匹配是执行的匹配。因此,如果您将StandardError条件放在首位,并且所有异常都继承自StandardError,则其他rescue语句将永远不会执行。
begin #可能失败的执行 rescue => e #这将吞噬所有错误 rescue FirstError => e #如果发生FirstError则执行某些操作 rescue SecondError => e #如果发生SecondError则执行某些操作 end
某些块具有隐含的异常处理一样def,class和module。这些块使您可以跳过begin语句。
def foo
...
rescue CustomError
...
ensure
...
end
热门推荐
10 祝女儿简短祝福语大全
11 大学新年祝福语简短创意
12 元旦适合的祝福语简短
13 朋友出远门祝福语简短
14 初六简短的祝福语
15 祝男孩生日祝福语简短
16 同事调离的祝福语简短
17 拜年红包的祝福语简短
18 妈妈生日祝福语简短励志