2011-04-16 8 views

答えて

5

事前定義された例外を使用する場合は、オブジェクトがすでにlistening状態にあるため、IllegalStateExceptionをスローすることがあります。

ただし、これを行うと、listenが既に呼び出されているかどうかをクライアントが知る方法があるはずです。例えば。方法はisListening()です。

これはIO問題であるため、IOExceptionから拡張される可能性のある独自の例外を作成することもできます。ネットワークリソースが最初のリッスンですでに使用されているため、複数回試聴する試みが失敗する可能性があります。 (ソケットバインディングに似ています)

2

この場合、私はIllegalStateExceptionを投げます。これは通常、ユーザーがオブジェクトの現在の状態で合法でないものを作成しようとしたことを示すために使用されます。

3

ライブラリのクライアントが間違って使用している場合にのみ発生する論理エラーですので、スローする例外はチェックされていない例外(例:java.lang.RuntimeExceptionまたはその派生)である必要があります。チェック例外に反対します。

「方法が違法または不適切なときに呼び出された信号を」しかし、それはまた、作られた、独自のカスタムで例外が考えられます。

java.lang.IllegalStateExceptionは、その目的のために意図されます例外階層。

関連する問題