#11 Rubyで学ぶエラーハンドリングの基本
Rubyのエラーハンドリングは、読みやすさを重視するRubyらしく、`begin`・`rescue`という独自の単語を使います。この記事では、Rubyにおけるエラーハンドリングの基本を解説します。
begin・rescueの基本
begin
result = 10 / 0
rescue ZeroDivisionError
puts "0では割れません"
end
他の言語の`try`・`catch`にあたる部分が、Rubyでは`begin`・`rescue`という単語になります。
ensureという必ず実行される部分
他の言語の`finally`にあたる部分は、Rubyでは`ensure`と書きます。
begin
# 何らかの処理
ensure
puts "処理が終わりました"
end
メソッド定義に直接rescueを書く
Rubyには、メソッド全体を`begin`で囲まなくても、メソッド定義に直接`rescue`を書けるという簡潔な書き方があります。
def divide(a, b)
a / b
rescue ZeroDivisionError
puts "0では割れません"
end
Rubyならではの注意点
`begin`・`rescue`・`ensure`という単語は、他の言語の`try`・`catch`・`finally`とは名前が全く異なります。他言語の経験がある人ほど、最初は単語を覚え直す必要がある点に注意しましょう。
まとめ
Rubyのエラーハンドリングは`begin`・`rescue`・`ensure`という独自の単語を使います。メソッド定義に直接書ける簡潔な書き方も覚えておきましょう。
本ページはプロモーションを含みます。
参考書籍(PR)
Rubyをもっと学びたい方には「プロを目指す人のためのRuby入門[改訂2版]」がおすすめです。
コメント
コメントを投稿