在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
异常处理的结构:
begin #开始
raise.. #抛出异常 rescue [ExceptionType = StandardException] #捕获指定类型的异常 缺省值是StandardException $! #表示异常信息 $@ #表示异常出现的代码位置 else #其余异常 .. ensure #不管有没有异常,进入该代码块 end #结束 可以结合$!错误原因,和$@错误位置做一个错误捕获并提示的小程序,比如:
1 begin
end
2 puts 3 puts "file: #{name = ARGV.shift}" 4 file = open(name) 5 i = 0 6 file.read.each_line{|line| puts "#{i+=1}.#{line}" } 7 rescue 8 puts "error:#{$!} at:#{$@}" 9 ensure 10 file.close 11 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
请发表评论