在Ruby中,異常處理機制通過使用begin
, rescue
, ensure
, else
和retry
關鍵字來實現。
begin
# 可能會拋出異常的代碼
rescue SomeError => e
# 處理異常的代碼
else
# 如果沒有異常拋出時執行的代碼
ensure
# 無論有無異常都會執行的代碼
end
可以使用rescue
關鍵字來捕獲指定類型的異常,并使用ensure
關鍵字來確保一段代碼無論是否有異常都會被執行。此外,還可以使用retry
關鍵字來在發生異常時重新執行異常發生前的代碼塊。