При работе со сложными функциями в Java могут быть случаи, когда программисту необходимо воздерживаться от возможных ограничений. Например, реализация и анализ алгоритмов на основе вероятных исключений. В таких ситуациях ловля « несколько исключений ” в Java позволяет разработчику правильно реализовать логику и упростить выполнение кода без каких-либо узких мест.
Этот блог продемонстрирует подходы к перехвату множественных исключений в Java.
Как поймать несколько исключений в Java?
“ Попробуйте поймать ” можно использовать для перехвата нескольких исключений в Java.
Пример 1. Перехват нескольких исключений в Java по отдельности
В этом примере можно справиться с несколькими исключениями, указав их отдельно:
пытаться {
интервал х = целое число.parseInt ( нулевой ) ;
System.out.println ( Икс ) ;
инт а = 2 ;
интервал б = а / 0 ;
System.out.println ( б ) ;
}
ловить ( NumberFormatException f ) {
System.out.println ( f.getMessage ( ) ) ;
}
ловить ( Арифметическое исключение e ) {
System.out.println ( e.getMessage ( ) ) ;
}
В приведенном выше фрагменте кода:
- Во-первых, включите « пытаться ' блокировать.
- Первое исключение: Примените « синтаксический анализ() », чтобы преобразовать нулевую строку в целое число, в результате чего « NumberFormatException ».
- Второе исключение: В этом исключении разделите инициализированное число на « 0 », поэтому возвращается бесконечность, ведущая к « Арифметическое исключение ».
- В ' ловить », учитывайте оба исключения.
- В этих блоках отобразите подробное сообщение об исключении в виде строки с помощью кнопки « получить сообщение () метод.
- Обратите внимание, что исключение, обнаруженное первым, будет обслуживаться ранее и отображаться независимо от последовательности указанных « ловить блоки.
Выход
В этом выводе можно заметить, что, поскольку синтаксический анализ выполняется первым в коде, соответствующее исключение отображается раньше.
Пример 2. Перехват нескольких исключений в Java с помощью оператора побитового ИЛИ «|»
В этом конкретном примере можно столкнуться с несколькими исключениями с помощью побитового оператора ИЛИ « | » также называется « одинарная труба », который проверит каждую часть условия, т. е. « исключение ', и вернуть ранее столкнувшееся исключение:
пытаться {инт а = 2 ;
интервал б = а / 0 ;
System.out.println ( б ) ;
интервал х = целое число.parseInt ( нулевой ) ;
System.out.println ( Икс ) ;
}
ловить ( NumberFormatException | Арифметическое исключение e ) {
System.out.println ( e.getMessage ( ) ) ;
}
В этом блоке кода:
- Вспомните обсуждавшиеся подходы к указанию тех же исключений, которые должны быть обслужены.
- Обратите внимание, что ранее встречавшееся исключение в этом случае — это « Арифематическое исключение » для уточнения понятия.
- В ' ловить », примените побитовый оператор ИЛИ « | », чтобы перебрать каждое из указанных исключений и вернуть соответствующее сообщение об исключении, с которым ранее сталкивалось, через « получить сообщение () метод.
Выход
Этот результат показывает, что, поскольку « Арифематическое исключение ” встречается первым, соответствующее сообщение об исключении возвращается как “ нить ».
Заключение
“ Попробуйте поймать ” можно использовать для перехвата нескольких исключений Java. Этого можно добиться, указав исключения отдельно или используя побитовый оператор ИЛИ « | “. Исключения обслуживаются на основе последовательности, в которой они происходят. В этом блоге обсуждались методологии перехвата множественных исключений в Java.