throw
Бросает исключение и прерывает выполнение метода.
Доступно с: Java 1.0
Синтаксис
throw new ExceptionType(message);Примеры
Проверка аргумента:
void withdraw(double amount) {
if (amount <= 0) {
throw new IllegalArgumentException("Amount must be positive: " + amount);
}
IO.println("Withdrawn " + amount);
}
void main() {
withdraw(50);
try {
withdraw(-5);
} catch (IllegalArgumentException e) {
IO.println(e.getMessage());
}
}Результат:
Withdrawn 50.0
Amount must be positive: -5.0Примечания
Для неверных аргументов обычно бросают IllegalArgumentException, для недопустимого состояния объекта — IllegalStateException, для неподдерживаемой операции — UnsupportedOperationException. Не путайте throw (бросить сейчас) и throws (объявление в сигнатуре метода).
См. также
- throws — Объявляет, какие проверяемые исключения может бросить метод.
- try / catch / finally — Перехватывает исключения; finally выполняется всегда, а try с ресурсами сам их закрывает.
- Objects.requireNonNull() — Проверяет, что значение не null, и сразу бросает NullPointerException с понятным сообщением.
- IllegalArgumentException — Сообщает, что метод получил недопустимый аргумент.
Вопросы и ответы по теме
В учебнике
- Что такое исключения — Исключения в Java — как программа сообщает об ошибке, как читать трассировку стека, частые исключения и иерархия Throwable.