0

チェック例外の要点を理解しています。つまり、注意する必要があるエラーを開発者に思い出させるためです。また、例外から回復できない場合に例外を処理しないという点も理解しています。 しかし、チェックされたエラーを処理しないことにした場合、ステートメントを含める必要があるのはなぜですか。 このコードを実行するとランタイム エラーが発生し、ステートメントをコメント アウト (および を追加) すると、コンパイル時エラーが発生します。それでもプログラムを中断する場合、これはエラーをスローするのに無意味に思えます。throwsthrows{main()

import java.io.IOException;

public class Blah {

    public static void main(String[] args) 
        throws IOException {

        throw new IOException();

    }

}
4

4 に答える 4

4

このthrows句は、メソッドが特定の例外をスローできることを示しています。メソッドが呼び出し元と交わす契約を設定し、スローできるチェック済み例外と、呼び出し元が処理する準備が必要な例外をメソッドに知らせますが、呼び出されたメソッドはそれらを毎回スローする必要はありません。まったく。

于 2014-06-27T23:43:56.833 に答える