В программе всегда есть различные проблемы. Чтобы включить нормальную работу во время выполнения программы, механизм обработки исключений, предоставленный Java, используется для улова возможных исключений, обработки исключений и позволяет программе работать нормально. Это обработка исключений Java.
1. Уловимые исключения
Исключения, которые можно попасть в Java, делятся на контролируемые и со временными исключениями.
1. Контролируемые исключения
В Java эти предсказуемые ошибки могут быть обработаны во время компиляции программы, и может быть предоставлена конкретная информация об ошибках. Эти ошибки называются управляемыми исключениями. Обычно используются управляемые исключения следующие:
Описание исключения ioException Когда происходит некоторое исключение ввода/вывода, это исключение брошено. SQLexception предоставляет информацию об ошибках доступа к базе данных или других ошибкам. ClassNotFoundException. Исключение не найдено. Nosuchfieldexception. Сигнал, генерируемый, когда класс не содержит поле с указанным именем. Nosuchmethodexception. Исключение брошено.
2. Исключение времени выполнения
Ошибки, которые не могут быть обнаружены компилятором в Java, называются исключениями времени выполнения. Общие исключения времени выполнения следующие:
Исключение описание indexoutofboundsexception Указывает, что исключение отбрасывается, когда значение индекса сбора или массива не выходит из диапазона NullPointerException, исключение, когда приложение пытается использовать NULL, где объект необходим для ArithmeticeXcept на подкласс, который не является экземпляром
2. Обработайте исключения
Когда на Java происходит исключение, вы можете использовать попробовать ... поймать, попробуйте ... поймать ... наконец или попробуйте ... наконец -то справиться с этим.
1. Используйте попробуйте .... поймать исключения
После попытки есть операторы, которые выполняются нормально, и после улова есть утверждения, которые обрабатывают исключения. Кроншеты улова - это типы исключений, с которыми необходимо обработать программа. Формат синтаксиса выглядит следующим образом:
try {операторы, которые выполняют нормально} catch (Exception e) {операторы, которые обрабатывают исключения}Вот пример арифметического исключения, следующим образом.
public class ExceptionTest {public static void main (string [] args) {int result = 1/0; try {System.out.println (result); } catch (Exception e) {System.out.println ("Throw Exception:" + e.getMessage ()); }}}Здесь 1/0 является алгоритмом исключений, потому что делитель не может быть 0. Результаты работы следующие:
Поскольку существует исключение, оператор после попытки не выполняется, поэтому оператор после улова выполняется. Среди них «e.getMessage ()» - это метод получения информации об исключении, который используется для получения подробных строк сообщений; Кроме того, существует также метод printStackTrace (), который используется для вывода трассировки стека в стандартный поток ошибок; и метод ToString () используется для получения краткого описания.
2. Используйте попробуйте. ловить. Наконец -то обрабатывайте исключения
Здесь утверждения после попытки уловить такие же, как и ранее, и утверждения после, наконец, должны быть выполнены независимо от того, происходит ли исключение. Следовательно, блок окончательного оператора обычно используется для выполнения сбора мусора. Формат синтаксиса выглядит следующим образом:
try {операторы, которые выполняют нормально} catch (Exception e) {операторы, которые обрабатывают исключения}, наконец, {операторы, которые определенно будут обработаны}3. Используйте попробуйте. Наконец -то обрабатывайте исключения
Когда в программе происходит исключение, оно может быть обработано соответствующим образом в блоке операторов, наконец,. Кроме того, когда в программе нет исключений, после выполнения оператора между Try и, наконец, будет выполнен код в блоке операторов наконец -то. Формат синтаксиса выглядит следующим образом:
Попробуйте {операторы, которые необходимо выполнить} наконец {операторы, которые определенно будут обработаны}3. Выбросьте исключение
Для исключений, которые происходят в программе, в дополнение к вышеупомянутой попытке ... обработка операторов Catch, вы также можете использовать заявление о объявлении бросков или выбрасывание для бросания исключений.
1. Используйте объявление броска, чтобы бросить исключение
Выбросы используются для объявления метода, бросает исключение при объявлении метода с использованием объявления бросков, а затем обрабатывает исключение при вызове метода.
Если вам нужно объявить несколько исключений, каждое исключение должно быть разделено запятыми, а формат синтаксиса выглядит следующим образом:
Название метода типа данных (список параметров), бросает исключение класс 1, класс исключений 2, ..., класс исключений n {метод корпуса;}Например, добавьте исключение исключения, используя броски.
public void showinfo () throws exception {// throw Exception fileInputStream in = new FileInputStream ("c: //record.txt"); // Создать объект io}2. Используйте заявление о броске, чтобы бросить исключение
Если вы хотите, чтобы программа бросила исключение самостоятельно, вы можете использовать оператор Thress для ее достижения. Формат синтаксиса выглядит следующим образом: бросить новое исключение («Исключение»);
То, что выбрасывается с помощью оператора Throw, является экземпляром класса исключений, обычно используемых с оператором IF. нравиться:
if (x <0) {бросить новое исключение ("Исключение программы, x не может быть меньше 0.");}