Junior — Middle
Czy można deklarować niekontrolowane wyjątki na liście throws w metodzie?
sobes.tech AI
Odpowiedź od AI
В Java можно объявлять unchecked исключения (наследники RuntimeException) в списке throws метода, но это не обязательно и обычно не принято. Компилятор не требует указывать unchecked исключения в throws, так как они не проверяются во время компиляции. Обычно в throws указывают только checked исключения, которые вызывающий код обязан обработать или пробросить дальше.
Пример:
public void myMethod() throws IllegalArgumentException { // можно, но не нужно
if (someCondition) {
throw new IllegalArgumentException("Ошибка аргумента");
}
}
Здесь throws IllegalArgumentException — unchecked исключение, его можно указывать, но это не обязательно.