java-interview
java-interview copied to clipboard
К вопросу об исключениях в блоке инициализации
Для нестатических блоков инициализации, если выбрасывание исключения прописано явным образом требуется, чтобы объявления этих исключений были перечислены в throws всех конструкторов класса. Иначе будет ошибка компиляции.
{
throw new IOException();
}
public Main() throws IOException {}
Даже при указании в конструкторах будет ошибка компиляции Initializer must be able to complete normally, вне зависимости от того, проверяемое оно или нет, а также статический блок или не-статический.
Тут скорее речь про вызов методов, указывающих в throws проверяемые исключения. Именно явное выбрасывание исключений в блоках не допускается.