美文网首页
Ruby语法(异常处理)

Ruby语法(异常处理)

作者: _西风凋碧树 | 来源:发表于2019-04-12 13:41 被阅读0次

异常处理结构

begin
  ... # 正常运行代码
rescue Exception1
  ... # 处理Exception1类型的错误
rescue Exception2
  ... # 处理Exception2类型的错误
rescue => err
  ... # 处理其他错误
ensure
  ... # 这里的代码在发生错误后总是会被执行,可以做一些清理工作
end

下面一个简单的示例,演示了捕获除数为零时发生的错误

begin
  y = 10
    z = 0
  x = y / z
  puts x
rescue ZeroDivisionError
  puts "除数为0"
rescue => err
  puts err
end

抛出异常

  • raise: 简单抛出一个未处理的异常
  • raise"message":抛出一个描述为message的异常
  • raise ExceptionType: 抛出一个某种错误类型ExceptionType的异常
  • raise ExceptionType,"message" : 抛出一个某种错误类型ExceptionType的异常,并指定错误描述。

恢复执行

y = 10
z = 0
begin
    x = y / z
    puts x
  rescue ZeroDivisionError
    z = 1 
    retry
  rescue => err
    puts err
end

注意:使用retry很容易导致程序无限循环下去,使用时应该特别小心

相关文章

  • Ruby语法(异常处理)

    异常处理结构 下面一个简单的示例,演示了捕获除数为零时发生的错误 抛出异常 raise: 简单抛出一个未处理的异常...

  • 异常处理的写法

    ruby中使用begin rescue end语句描述异常处理 在ruby中,异常及其相关信息都是被作为对象来处理...

  • 异常处理

    异常处理语法: try: 错误!=异常 ...

  • 第十二章:异常处理

    异常处理语法格式: try: ...处理语句 except 异常类型: ...异常处理语句 pytho...

  • Python异常处理

    Python异常处理 一、捕获异常 1.异常捕获语法 2.错误类型捕获 except:处理所有异常。except ...

  • Python 学习笔记 - 第六天

    1.语法错误 语法错误, 也称为解析错误: 2.异常 语法正常, 运行时检测到错误, 则为异常. 3.异常处理 通...

  • Ruby 处理异常小技巧

    类似用户未读通知的站内消息,每次访问站点时都必须查询的操作,如果出现数据库查询连接异常或网络连接错误,那么程序就会...

  • JAVA异常处理机制

    四、异常处理的基本语法 在编写代码处理异常时,对于检查异常,有2种不同的处理方式:使用try…catch…fina...

  • The Python Tutorial - C8 Errors

    语法错误异常 try except else处理异常 抛出异常 自定义异常清理 finally/with 1 Sy...

  • [Python] (Day-16) - 错误和异常

    语法错误 语法错误或者称之为解析错 语法错误在编译时编译失败 示例: 异常 运行期检测到的错误被称为异常 异常处理...

网友评论

      本文标题:Ruby语法(异常处理)

      本文链接:https://www.haomeiwen.com/subject/qhkcwqtx.html