码迷,mamicode.com
首页 > 其他好文 > 详细

第十章 错误处理与异常

时间:2016-02-06 18:14:04      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:

(1)

技术分享

 

技术分享

(2)在rescue中使用retry后,begin以下的处理会重新执行一遍。如下例子,程序每隔10秒执行一次File.open,直到能成功打开文件为止,打开文件后再读取其内容。

技术分享

如上目录中没有two2.txt文件,程序每隔10秒就运行一次,直到后面我们在该目录下创建two2.txt程序才运行结束。这个如果指定了无论如何都打不开的文件就会陷入死循环。但是这个可以用于比如抢购小米手机这样的原理,目标可以访问,你不断刷新即可。

(3)

技术分享

(4)当存在多个种类的异常,我们希望对不同的异常进行不同的处理,那我们可以用多个rescue来分开处理

begin   
可能发生异常的处理
rescue Exception1, Exception2 => 变量
对Exception1 或者 Exception2的处理
rescue Exception3 => 变量
对Exception3 的处理
rescue   
对上述异常以外的异常的处理
end

 

技术分享

(5)

Ruby中所有的异常都是Exception类的子类。

rescue 中指定的异常的种类实际上就是异常类的类名。

rescue 中不指定异常类时,程序会默认捕捉 StandardError 类及其子类的异常。

技术分享

(6)使用class语句,我们呢就可以进行定义方法等操作。

技术分享

(7)主动抛出异常

技术分享

 

第十章 错误处理与异常

标签:

原文地址:http://www.cnblogs.com/blueColdFire/p/5184111.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!