在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
begin #开始
raise.. #抛出异常 rescue [ExceptionType = StandardException] #捕获指定类型的异常 缺省值是StandardException $! #表示异常信息 $@ #表示异常出现的代码位置 else #其余异常 .. ensure #不管有没有异常,进入该代码块 end #结束 这是异常处理结构,可以结合$!错误原因,和$@错误位置做一个错误捕获并提示的小程序了,比如
begin
上面的小程序读入一个指定的文件并加入行号进行输出,当产生错误时会输出错误信息以及提示,你可以故意输入一个不存在的文件名。puts puts "file: #{name = ARGV.shift}" file = open(name) i = 0 file.read.each_line{|line| puts "#{i+=1}.#{line}" } puts rescue puts "error:#{$!} at:#{$@}" ensure file.close end 其实begin相当于c#的try rescue相当于c#的catch ensure相当于c#的finaly raise相当于c#的throw 异常类的结构 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论