1

...私はこれら2つの間で決定することはできません。私はいつもコードに戻って切り替えます。

ServletExceptionとIOExceptionの両方を備えた(拡張された)HttpServletからコーディングしている場合(たとえば、Loginクラス)、例外(NoSuchAlgorithmException、NamingExceptionなど)をさらにスローして、アプリケーションのページに表示したい場合後で、ServletExceptionとIOExceptionのどちらをスローしますか?

PS:私は、考えられるすべてのNoSuchAlgorithmException、NamingExceptionなどをキャッチしようとはしていません。これは、これまでに見たことのない本当の原因を見逃して、間違った方法で処理したり、ユーザーに間違ったことを通知したりする可能性があるためです。

4

2 に答える 2

0

IOException独自の意味があります。IOExceptionファイルやURLからのデータの読み取り/書き込みなど、IO操作に問題がある場合にのみスローする必要があります。2つのうちどちらかを選択する必要がある場合は、を選択しますServletExcetion

しかし、より良い例外処理を定義する余地がある場合は、独自のカスタム例外クラスを作成したいと思います。たとえば、関連する例外をMySystemException拡張RuntimeExceptionしてラップし、MySystemExceptionそれをスローします。

于 2012-11-24T05:45:31.927 に答える
0

これらはいずれも、から継承するRuntimeExceptionか、から継承する別の例外をRuntimeExceptionとして継承しIllegalArgumentExceptionます。

于 2012-11-24T05:40:57.633 に答える