【Java入門】exitでプログラムを終了させる(returnとの違いも解説)

こんにちは!エンジニアの中沢です。

Javaにはプログラムを終了するために「Systemクラス」の「exitメソッド」があります。

プログラムを強制的に終了させることができるので上手く活用してください。

この記事では、

・exitメソッドとは
・exitメソッドの使い方

という基本的な内容から、

・exitメソッドとreturn文の違い

などの応用的な使い方に関しても解説していきます。

今回はこれらの方法を覚えるために、exitメソッドの使い方をわかりやすく解説します!

なお、Javaの記事については、こちらにまとめています。

目次

exitメソッドとは

exitメソッドはプログラムを強制的に終了させるために使います。

exitメソッドの引数には終了コードとして、正常に終了した場合には「0」を指定し、異常終了した場合には「0」以外の値を指定します。

メソッドの処理を終了して呼び出し元のメソッドに戻るには「return文」を使いますが、exitメソッドはその行でプログラムを終了します。

return文の使い方についてはこちらの記事で詳しく解説しているので、ぜひ確認してください。

exitメソッドの使い方

ここでは、exitメソッドの使い方を解説します。

exitメソッドはそこでプログラムを終了させるので、その後の処理は実行されません。

次のプログラムで確認してみましょう。

public class Main {
	public static void main(String[] args) {

		System.out.println("表示されるメッセージ");
		System.exit(0);

		System.out.println("表示されないメッセージ");
	}
}

実行結果:

表示されるメッセージ

このプログラムの実行結果から、exitメソッドの後の処理は実行されていないことが確認できました。

exitメソッドとreturn文の違い

ここでは、exitメソッドとreturn文の違いを解説します。

exitメソッドでプログラムを終了させる場合には、finallyブロック内の処理は実行されません。

return文で処理を終了させる場合には、finallyブロック内の処理が実行されます。

次のプログラムで確認してみましょう。

public class Main {
    public static void main(String[] args) {

        try {
            System.out.println("tryの処理");
            System.exit(0);
        } catch (Exception e) {
            System.out.println("catchの処理");
        } finally {
            System.out.println("finallyの処理");
        }
    }
}

実行結果:

tryの処理

このプログラムの実行結果から、exitメソッドではfinallyブロック内の処理が実行されないことが確認できました。

try-catch文の使い方はこちらの記事で詳しく解説しているので、ぜひ確認してください。

まとめ

いかがでしたか?

今回は「Systemクラス」の「exitメソッド」で、プログラム終了させる方法を解説しました。

exitメソッドはreturn文と違い、その行でプログラムを終了できるのでぜひ活用してくださいね。

もし、exitメソッドの使い方を忘れてしまったらこの記事を確認してください!

この記事を書いた人

【プロフィール】
DX認定取得事業者に選定されている株式会社SAMURAIのマーケティング・コミュニケーション部が運営。「質の高いIT教育を、すべての人に」をミッションに、IT・プログラミングを学び始めた初学者の方に向け記事を執筆。
累計指導者数4万5,000名以上のプログラミングスクール「侍エンジニア」、累計登録者数1万8,000人以上のオンライン学習サービス「侍テラコヤ」で扱う教材開発のノウハウ、2013年の創業から運営で得た知見に基づき、記事の執筆だけでなく編集・監修も担当しています。
【専門分野】
IT/Web開発/AI・ロボット開発/インフラ開発/ゲーム開発/AI/Webデザイン

目次