ビデオ: java入門 第16回 例外処理 2024
>は、あなたのプログラムが絶対に提供しなければならないと感じているJavaのデザイナーが例外であるということです。チェックされた例外をスローする可能性がある文をコーディングするときは、プログラムは次の2つのうちのいずれかを実行する必要があります。 例外のキャッチブロックを持つtry文内に文を置いて例外をキャッチします。
-
メソッドが例外を処理したくないことを示すために、文を含むメソッドにthrows節を指定して、例外をその行の上に渡します。
-
<! - 1 - >
スローとスローを混同しないように注意してください。 throwsキーワードは、メソッドが特定のチェック例外を捕捉せず、むしろ呼び出しルーチンにスローすることを示すためにメソッドで使用されます。一方、throwステートメントは、実際には例外をスローする実行可能ステートメントです。
これは「キャッチ・アンド・スロー」ルールです。つまり、チェック例外をスローする可能性のある文を含むメソッドは、例外がスローされる可能性があることを認識している必要があります。このメソッドは、直接処理したり、例外を呼び出し側に渡したりすることでこれを行います。
<!たとえば、FileInputStreamクラスを使用してファイルからデータを読み取るメソッドは、FileInputStreamオブジェクトの作成時にFileNotFoundExceptionを処理する必要があります。この例外は、指定されたファイルが存在しない場合に発生します。 FileNotFoundExceptionはチェックされた例外であるため、キャッチまたはスローする必要があります。
FileNotFoundExceptionを処理する1つの方法は、通常のtryステートメントを使用してファイルをキャッチすることです。<! (FileNotFoundException e){System.FileInputStream(FileNotFoundException);}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}で定義されています。でる。 println( "File not found。");}}
この例では、C:testの場合、ファイルが見つかりませんというメッセージが表示されます。 txtファイルが存在しません。
FileInputStreamオブジェクトを作成するメソッドでFileNotFoundExceptionを処理したくない場合、そのメソッドは次のように例外をスローする必要があります。public static void openFile(String name)throws FileNotFoundException {FileInputStream f = new FileInputStream(name);}
openFileメソッドにthrows節を追加すると、FileNotFoundExceptionが発生したときに、単にopenFileメソッドを呼び出したメソッドに渡されます。つまり、呼び出し側のメソッドは例外をキャッチしたりスローする必要があります。