6 Java исключений, которые преследуют новичков

Время от времени я сталкиваюсь с разработчиками-новичками, которые застряли на понимании следующих простых исключений и мне приходиться все заново объяснять им. Скорей всего в подобной ситуации оказываются многие опытные Java разработчики, которые помогают новичкам справиться со следующими исключениями. Поэтому я решил написать эту статью и в будущем ссылаться на нее. Комментарии и добавления в список исключений приветствуются.

com.javarush.test.level09.lesson08.task04/5

/* Перехват checked исключений
В методе processExceptions обработайте все checked исключения.
Нужно вывести на экран каждое возникшее checked исключение.
Можно использовать только один блок try…
*/

public class Solution {
public static void main(String[] args) {
processExceptions(new Solution());

}

public static void processExceptions(Solution obj) {
obj.method1();
obj.method2();
obj.method3();
}

public void method1() throws IOException {
throw new IOException();
}

public void method2() throws NoSuchFieldException {
throw new NoSuchFieldException();
}

public void method3() throws RemoteException {
throw new RemoteException();
}
}

Не пойму никак, как решить. Получается обработать только одно исключение, а до остальных не доходит.
  • ,

Типичные ошибки в обработке исключений

Исключение — это нарушение нормального хода выполнения Java (или любой другой) программы. Это нарушение может произойти из-за нарушения доступа к памяти, делении на ноль, проблемы инициализации, выполнении запрещенной инструкции или любой другой фатальной ошибки. Java способен обрабатывать все такие нежелательные сценарии элегантно, но когда дело доходит до использования этих возможностей Java разработчиками, может возникнуть несколько проблем.

В этой статье я не собираюсь обсуждать, как работает обработка исключений (Exception Handling) в Java. Я предполагаю, что читатель уже знаком с иерархией исключений, проверяемыми исключениями (checked exceptions), непроверяемыми исключениями (unchecked exceptions), исключительными рабочими ситуациями при выполнении программы (runtime exceptions). Здесь мы обсудим наиболее распространенные ошибки, которых следует избегать.