●学校情報

講座一覧・募集状況

学習方法

学習サポート

修了生の評価

受講生の横顔

当学院について

入学相談

入学手続

 

●講座情報

技術者養成講座

プログラミング講座

WEB講座

情報処理試験講座

Excel講座

Access講座

 

●関連コラム

関連コラム

関連用語集

 

logo

 

 

関連用語集

例外を発生させる / 伝える!「throw」と「throws」とは?

Javaの例外処理には try-catch だけでなく、throwthrows という2つの重要なキーワードがあります。
これらは、例外を明示的に発生させたり、呼び出し元に伝えたりするために使います。

throw:例外を発生させる

throw は、明示的に例外を投げる(発生させる)ためのキーワードです。
使い方は以下のようになります:

throw new 例外クラス("メッセージ");
    

例:条件に応じて例外を発生させる

public class Sample {
    public static void checkAge(int age) {
        if (age < 0) {
            throw new IllegalArgumentException("年齢は0以上でなければなりません");
        }
        System.out.println("年齢:" + age);
    }
}
    

throws:例外を呼び出し元に伝える

throws は、そのメソッドで例外が発生する可能性があることを示し、呼び出し元にその責任を委ねるときに使います。

public void readFile(String path) throws IOException {
    // ファイル処理でIOExceptionが発生するかも
}
    

例:IOExceptionをthrowsで通知

import java.io.*;

public class FileReaderExample {
    public static void read(String filename) throws IOException {
        BufferedReader br = new BufferedReader(new FileReader(filename));
        System.out.println(br.readLine());
        br.close();
    }

    public static void main(String[] args) {
        try {
            read("sample.txt");
        } catch (IOException e) {
            System.out.println("ファイル読み込みに失敗しました");
        }
    }
}
    

throw と throws の違い

キーワード 役割 書く場所 使用例
throw 例外を実際に発生させる メソッドの中 throw new IllegalArgumentException();
throws 例外を呼び出し元に伝える メソッドの宣言部 public void x() throws IOException

まとめ

throw は「この場で例外を発生させる」、throws は「このメソッドは例外を投げる可能性があります」と事前に伝えるためのキーワードです。
Javaの例外処理をより柔軟に、安全に扱うために、throwとthrowsの使い分けをしっかり身につけましょう!