在Ruby中,异常处理机制通过使用begin
, rescue
, ensure
, else
和retry
关键字来实现。
begin
# 可能会抛出异常的代码
rescue SomeError => e
# 处理异常的代码
else
# 如果没有异常抛出时执行的代码
ensure
# 无论有无异常都会执行的代码
end
可以使用rescue
关键字来捕获指定类型的异常,并使用ensure
关键字来确保一段代码无论是否有异常都会被执行。此外,还可以使用retry
关键字来在发生异常时重新执行异常发生前的代码块。