类 StandardError
最标准的错误类型都是 StandardError
的子类。 没有显式 Exception
类的 rescue 子句会捕获所有 StandardError(且仅捕获这些错误)。
def foo raise "Oups" end foo rescue "Hello" #=> "Hello"
另一方面
require 'does/not/exist' rescue "Hi"
引发异常
LoadError: no such file to load -- does/not/exist