Java Core junior
Можно ли в catch ловить Throwable? Стоит ли?
Ответ
Можно, но не стоит — поймаешь и Error (OutOfMemoryError, StackOverflowError), которые обычно нельзя восстанавливать. Лови конкретные исключения.
Разбор: catch (Throwable t) синтаксически допустим, но опасен: Throwable — корень иерархии, и под него попадают Error (OutOfMemoryError, StackOverflowError), сигнализирующие о фатальном состоянии JVM, из которого восстановление обычно невозможно и бессмысленно. Правильно ловить конкретные исключения. Ловушки: компилятор такое не запрещает, а ловить Error и «продолжать работу» — как раз то, чего делать нельзя.
Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.