
Но блок try-catch не может отлавливать checked Exception, если он не выбрасывается в теле try.
// скомпилируется успешно
void method1() throws IOException { }
void method2() {
try {
} catch(IOException e) { } // ошибка компиляции. IOException никогда не будет выброшен
}