Ruby 錯誤處理主要使用 begin
、rescue
、ensure
和 raise
語句
begin
:用于開始一個可能引發異常的代碼塊。rescue
:用于捕獲并處理特定類型的異常。可以指定多個異常類型,按順序捕獲。ensure
:用于指定在任何情況下都會執行的代碼塊,通常用于資源清理,如關閉文件、釋放內存等。raise
:用于手動引發異常。可以引發內置異常或自定義異常。以下是一個簡單的 Ruby 錯誤處理示例:
begin
# 可能引發異常的代碼
result = 10 / 0
rescue ZeroDivisionError => e
# 處理 ZeroDivisionError 異常
puts "發生了除以零的錯誤:#{e.message}"
ensure
# 無論是否發生異常都會執行的代碼
puts "錯誤處理示例結束"
end
在這個示例中,我們嘗試執行一個除以零的操作,這會引發 ZeroDivisionError
異常。我們使用 rescue
捕獲該異常并處理它,然后使用 ensure
確保在任何情況下都會執行某些操作。