JavaでError系の例外をcatchしてはいけないのはなぜでしょうか?
また、catchしなかった場合、WEBアプリケーションは停止してしまうのでしょうか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
ベストアンサー
JavaでError系の例外をcatchしてはいけないのはなぜでしょうか?
逆に伺いますが、catchしたとして、何か対策を行えるのでしょうか。
このようなエラーは、絶対に起きてはならない異常な状態であるためです。(Java7マニュアルより)
大半のエラーは、ランタイムやJVM自体の異常時に報告されるもので、そもそも通常は回復する手段もないどころか、そのままプログラムの実行を続けること自体が危険になりうるような状況です。そのまま終了するのが、いちばんマシな選択肢です。
回復可能なError
としては、複数スレッドを立ち上げて待ち受けるサーバーで、1つのスレッドがOutOfMemoryError
となった場合、というのが考えられます。スレッドを減らせば、とりあえずサーバとして生き残ることはできるかもしれません。
投稿2018/07/25 04:25
総合スコア145123
0
なんか、間違った理解をされてるように思われますが、
どこに、catchしてはいけない、と書かれているんでしょうか
投稿2018/07/25 03:09
編集2018/07/25 03:09総合スコア87719
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/07/25 03:54
2018/07/25 04:06
2018/07/25 05:52
退会済みユーザー
2018/07/25 07:13
2018/07/25 07:15
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/07/25 04:28