Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】Object::SystemExit定数の使い方

SystemExit定数の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

SystemExit定数は、Rubyプログラムを意図的に終了させる際に使用される、特別な例外クラスを表す定数です。これは、プログラムに何らかのエラーが発生したことを示す通常の例外(エラー)とは異なり、開発者が意図的にプログラムの実行を停止させるときに発生するものです。

具体的には、RubyのKernel#exitメソッドが呼び出されたときに、このSystemExit例外が内部で発生し、プログラムの終了処理が開始されます。例えば、コマンドラインツールで処理が完了した後にexit(0)と呼び出すことで、正常終了のステータス(0)と共にプログラムを終了させることができます。この終了ステータスは、SystemExitオブジェクトに保持されており、プログラムがどのように終了したかを外部のプロセス(例えばシェルスクリプトなど)に伝えるために重要な情報となります。

SystemExitは、他の一般的なエラーを表すStandardErrorクラスのサブクラスではありません。Exceptionクラスの直接のサブクラスであるため、通常のrescue StandardErrorでは捕捉されず、プログラムは終了します。もしSystemExitを捕捉して終了処理の前に特定の処理を行いたい場合は、rescue SystemExitまたはrescue Exceptionと明示的に記述する必要があります。この仕組みにより、開発者は意図的な終了処理と、予期せぬエラーによる終了処理を明確に区別して扱うことができます。

構文(syntax)

1raise SystemExit

引数(parameters)

引数なし

引数はありません

戻り値(return)

Class

SystemExit は、Ruby プログラムの終了を通知するために使用される例外クラスそのものを返します。

関連コンテンツ

関連プログラミング言語