Skip to content

К вопросу об исключениях в блоке инициализации #166

Description

Для нестатических блоков инициализации, если выбрасывание исключения прописано явным образом требуется, чтобы объявления этих исключений были перечислены в throws всех конструкторов класса. Иначе будет ошибка компиляции.

{
    throw new IOException();
}

 public Main() throws IOException {}

Даже при указании в конструкторах будет ошибка компиляции Initializer must be able to complete normally, вне зависимости от того, проверяемое оно или нет, а также статический блок или не-статический.

Тут скорее речь про вызов методов, указывающих в throws проверяемые исключения. Именно явное выбрасывание исключений в блоках не допускается.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions