当您未指定如下的异常类时,您会捕获哪些异常:
begin
# do something
rescue
puts "Exception!"
end
Run Code Online (Sandbox Code Playgroud)
根据我的Programming Ruby 1.9的副本,
没有参数的rescue子句被视为具有参数
StandardError.
这是来自ruby-doc.org的文档:
默认情况下,
rescue只有截取StandardError及其后代,但您可以指定要处理的异常作为参数.(当rescue在语句修饰符位置时,此技术不起作用 .)
如果您需要引用它,那么为什么Not Wiki 可以使用Exception层次结构.
作为快速参考,非派生的Exception类StandardError是:
fatalNoMemoryErrorScriptErrorSignalExceptionSystemExitSystemStackError