まず、学んだことを並べていきます。
①try-catch文を使用するとtryブロック内で例外が発生した時にcatchブロックに処理が移る。
②Exception系例外が起こる可能性がある場合は、try-catch文が必須。
③後片付けの処理は、状況に関わらず、必ず実行させるfinallyブロックに記述する。
④try-with-resources文を利用すると、後片付け処理の記述が不要になる(Java7以降)
⑤スロー宣言を行うことで、例外の処理のを呼び出し元に委ねることが出来る。
ここで私の疑問と認識です。
①は、例外がでた時にはそれをキャッチして、キャッチの中身を表示することで強制終了を避ける。
スロー宣言は例外が起きるかもしれないクラスやメソッドがあるときに宣言。
スローしていれば例外が起きても強制終了はなく、呼び出し元に行って例外処理があればそれを持って処理を表示、終了。という認識でいいでしょうか。
※でもどのクラスをスローすればいいのかはどのようにして判断、宣言しているのでしょうか。
後片付け処理とは、例外をcatchしたらfinallyブロックを実行するということ。という認識です。
finallyを記述すると何かと複雑なコードになるイメージなので、④のtry-with-resources文を使えば問題ないというくらいの認識で良いでしょうか。
それからファイルが開いたから閉じないといけない。みたいなコードが③、④に当たるのかな?
と思っていますが、ファイルを開いて文字入力をするメソッドはFileWriteでこれがでたら
後片付け処理をしないといけないという感じの認識で良いでしょうか。
他にも後片付けがいるものはあるのでしょうか。
わかりにくい質問形式で申し訳ありません。よろしかったら少しでもアドバイスをいただけると幸いです。
あなたの回答
tips
プレビュー