Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник Java

Exception

Базовый класс исключений, которые программа может перехватить и обработать.

Доступно с: Java 1.0

Синтаксис

public class Exception extends Throwable
public Exception(String message)
public Exception(String message, Throwable cause)

Параметры

ПараметрТипОписание
messageStringТекст ошибки, доступный через `getMessage()`.
causeThrowableНеобязательная исходная причина.

Примеры

Своё проверяемое исключение:

class InsufficientFundsException extends Exception {
    InsufficientFundsException(String message) {
        super(message);
    }
}
 
void withdraw(int balance, int amount) throws InsufficientFundsException {
    if (amount > balance) {
        throw new InsufficientFundsException("Need " + amount + ", have " + balance);
    }
    IO.println("Withdrawn " + amount);
}
 
void main() {
    try {
        withdraw(100, 30);
        withdraw(100, 250);
    } catch (InsufficientFundsException e) {
        IO.println("Error: " + e.getMessage());
    }
}

Результат:

Withdrawn 30
Error: Need 250, have 100

Примечания

Наследники Exception (кроме RuntimeException) — проверяемые исключения: компилятор требует либо перехватить их в catch, либо объявить в throws. Иначе ошибка компиляции unreported exception ... must be caught or declared to be thrown. Перехват самого Exception ловит почти всё — делайте это только на верхнем уровне программы.

См. также

  • RuntimeException — Базовый класс непроверяемых исключений — ошибок в логике программы.
  • throw — Бросает исключение и прерывает выполнение метода.
  • try / catch / finally — Перехватывает исключения; finally выполняется всегда, а try с ресурсами сам их закрывает.
  • Throwable.getMessage() — Возвращает текст сообщения исключения.
  • Throwable.getCause() — Возвращает исходное исключение, которое было обёрнуто в текущее.

В учебнике

  • Что такое исключения — Исключения в Java — как программа сообщает об ошибке, как читать трассировку стека, частые исключения и иерархия Throwable.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.