- ベストアンサー
例外処理
デバッグをしてみました。 すると,try・catch文までしか実行されていないことがわかりました。 public void init() { try { jbInit(); } catch(Exception e) { e.printStackTrace(); } } 例外処理について調べてはみたものの、なぜこの部分で実行が止まってしまうのか、 解決につながるようなことが,みつかりません。 1.例外処理はどのような処理なのか 2.なぜ、try・catchで実行が終了してしまうのか 教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
質問にあるプログラムだけでは、詳しく答えることができないのですが、 1. 例外処理とは簡単に言ってしまえば、try文の中で オブジェクトが存在していないのに参照しようとした等 正常に実行できない例外があったとき、代わりにcatch文 の中を実行する処理です。 2. tryの中のjbInit()で例外が発生したため、catchの中の e.printStackTrace()の処理が実行されますが、多分この e.printStackTrace()の中で実行を終了させる命令が記述 されているためだと思われます。また、デバッグをするの であればe.printStackTrace()によってエラーメッセージ とその行番号が出力されていると思われるのでそこを参照 してみて下さい。
その他の回答 (1)
- shosin
- ベストアンサー率33% (8/24)
例外処理はtry文の中で例外が起きて実行できない時にcatch文の中でそのときに代わりに実行する処理です。 2についてはこれだけのプログラムではわかりません。
お礼
ありがとうございます。 catch文で代わりに実行するということは, Errorが出ないように予測した対策をcatch文に入力をして おくということで,良いのでしょうか? 2については,プログラム量が多い等の理由もあって,残念ながら 載せることができません。すいません。
お礼
ありがとうございます。 詳しく回答頂いたので,もやもやしていた部分がだいぶ消えました。 e.printStackTrace()の中を見直してみたいと思います。 ありがとうございました。