内建异常类
- Exception
- 所有异常类的超类。
- NoMemoryError
- 同时保留过多的内存空间时会抛出此异常。
- ScriptError
- 代表脚本错误的异常。
- NotImplementedError
- 调用未配置的功能时会抛出此异常。
- SyntaxError
- 语法错误时会抛出此异常。
- StandardError
- 当调用 rescue 而没有提供异常类时,则会捕捉此类的所有子类错误。
- ArgumentError
- 当调用方法,而所提供的参数数目不符合要求,或者参数值错误时,会抛出此异常。
- IndexError
- 当索引超出范围时抛出此异常。
- IOError
- 当输入/输出发生错误时抛出此异常。
- EOFError
- 当到达文件末端 EOF(End Of File)时抛出此异常。
- LocalJumpError
- 当控制结构中找不到跳转目标时抛出此异常。
- NameError
- 存取未定义区域变量或常量时抛出此异常。
- NoMethodError
- 调用未定义的方法时抛出此异常。
- RangeError
- 范围异常,在进行超出范围的整数转换(例如由 Bignum 转为 Fixnum 等)时会抛出此异常。
- FloatDomainError
- 在进行正负无穷或 NaN(Not a Number 非数字)转换成 Bignum,或将数字与 NaN 进行比较时会抛出此异常。
- RegexpError
- 当编译正则表达式失败时抛出此异常。
- RuntimeError
- 执行中错误。当调用 raise
而没有指定异常类型时抛出此异常。
- SystemCallError
- 系统调用失败时抛出此异常。
- Errno::EXXX
- 每个 Errno 错误都有其对应的异常类,每个类的名称与含义请参看 Errno
模块。
- SystemStackError
- 当堆栈深度过深时抛出此异常。
- TypeError
- 当出现错误的类型调用时抛出此异常。
- ZeroDivisionError
- 当除数为 0 时抛出此异常。
- SystemExit
- 强行结束程序,详情请参看 exit。
- fatal
- 致命(内部)错误。此异常对象无法使用一般方法察看。