複数の catch ステートメント:
さまざまな例外を処理する例:
次のプログラムは 2 種類の例外をキャッチします:
ArithmeticException (ゼロ除算)。
ArrayIndexOutOfBoundsException (配列の境界外へのアクセス).
コード例:
class ExcDemo4 { public static void main(String args[]) { // O array numer é maior que denom. int numer[] = { 4, 8, 16, 32, 64, 128, 256, 512 }; int denom[] = { 2, 0, 4, 4, 0, 8 }; for (int i = 0; i < numer.length; i++) { try { // Tenta realizar a divisão System.out.println(numer[i] + " / " + denom[i] + " is " + numer[i] / denom[i]); } catch (ArithmeticException exc) { // Captura e trata a exceção de divisão por zero System.out.println("Can't divide by Zero!"); } catch (ArrayIndexOutOfBoundsException exc) { // Captura e trata a exceção de acesso fora dos limites do array System.out.println("No matching element found."); } } } }
プログラム出力:
出力例:
4 / 2 is 2 Can't divide by Zero! 16 / 4 is 4 32 / 4 is 8 Can't divide by Zero! 128 / 8 is 16 No matching element found. No matching element found.
catch ブロックの実行:
各 catch は、コード内で発生する順序でチェックされます。
見つかった例外のタイプに対応するキャッチのみが実行され、その他は無視されます。
複数のキャッチを使用する利点:
結論:
以上が複数の catch ステートメントの使用の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。