Ruby编程:异常处理、布尔逻辑与文件操作详解
1. Errno模块:操作系统错误映射
在Ruby中,异常对象是 Exception 的子类,但操作系统通常使用整数来报告错误。 Errno 模块动态创建,用于将操作系统错误映射到Ruby类。每个错误编号都会生成一个 SystemCallError 的子类,类名以 Errno:: 开头。
1.1 Errno类示例
在Unix或Windows平台上,Ruby有诸如 Errno::EACCES 、 Errno::EAGAIN 、 Errno::EINTR 等 Errno 类。每个 Errno 类都有一个对应的整数错误编号,可通过类常量 Errno::error::Errno 获取。
Errno::EACCES::Errno
# → 13
Errno::EAGAIN::Errno
# → 35
Errno::EINTR::Errno
# → 4
1.2 异常匹配
从Ruby 1.8开始, rescue 子句使用 Module#=== 来匹配异常。 SystemCallError 类重写了 === </
超级会员免费看
订阅专栏 解锁全文
49

被折叠的 条评论
为什么被折叠?



