2011-01-20 8 views
0

私はコードを実行するときにいくつかの例外があります。 私がしたいことは、FileNotFoundExceptionNullPointerExceptionに続き、他の例外を打ち破りたいと思います。例外を継続する

どうすればよろしいですか? おかげ

+11

あなたはこれらの例外を排除するようにコードを修正する必要があります。 'NullPointerException'をスローするコードのための**言い訳はありません。 – SLaks

+1

NullPointerExceptionsをスローするコードは、まったく正しく動作しない可能性があります。 –

+3

+1 SLaks:知恵の言葉。意図されたNullPointerExceptionsは、常にif条件よりも遅くなります。 – Daniel

答えて

5
try { 
    stuff() 
} catch(NullPointerException e) { 
    // Do nothing... go on 
} catch(FileNotFoundException e) { 
    // Do nothing... go on 
} catch(Exception e) { 
    // Now.. handle it! 
} 
+3

私は彼がそれを意味すると思っていますが、 – Nanne

+0

Nanne:私も最初にそれを書いたが、それから私はその質問を読んで、それは明らかになった。 – Daniel

+1

この回答は技術的には正確ですが、決して使用するべきではありません。 – biziclop

0

@danielが示唆したようにあなたがこれを行うことができますが、私はいくつかの追加の考えを持っています。

  1. あなたは「何もしたくない」ことは決してありません。少なくとも、例外があったという事実を記録する。
  2. NullPointerExceptionsをキャッチすることは危険です。彼らはどこから来ても、あなたが例外を期待するコードだけではありません。キャッチして処理を続けると、try/catchブロック間でコードを厳密に制御しないと意図しない結果になることがあります。キャッチされた例外に
0

複数のcatchブロックはtryブロックでarised

<code> 
try{<br/> 
// Code that may exception arise.<br/> 
}catch(<exception-class1> <parameter1>){<br/> 
//User code<br/> 
}catch(<exception-class2> <parameter2>){<br/> 
//User code<br/> 
}catch(<exception-class3> <parameter3>){<br/> 
//User code<br/> 
} 
</code> 

出典:Tutorial Data - Exception handling

関連する問題