[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-java-core-chto-proizoydyot-esli-v-bloke-initsializatsii-vozniknet-isklyuchitelnaya-situatsiya":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":20,"progress":21,"seo":22},32,"chto-proizoydyot-esli-v-bloke-initsializatsii-vozniknet-isklyuchitelnaya-situatsiya",2,"java-core","Java Core","☕","Что произойдёт, если в блоке инициализации возникнет исключительная ситуация?","Для нестатических блоков инициализации, если выбрасывание исключения прописано явным образом требуется, чтобы объявления этих исключений были перечислены в `throws` всех конструкторов класса. Иначе будет ошибка компиляции. Для статического блока выбрасывание исключения в явном виде, приводит к ошибке компиляции.\n\nВ остальных случаях, взаимодействие с исключениями будет проходить так же, как и в любом другом месте. Класс не будет инициализирован, если ошибка происходит в статическом блоке и объект класса не будет создан, если ошибка возникает в нестатическом блоке.","","middle",[15,16,17,18,19],"исключения","core","static","ExceptionInInitializerError","инициализация",[],null,{"title":23,"description":24,"ogTitle":25,"ogDescription":26,"keywords":27,"schemaAnswer":31,"featuredSnippetReady":32},"Исключение в блоке инициализации Java — что произойдёт — Gymterview","В статическом блоке явный throw — ошибка компиляции. RuntimeException в static → ExceptionInInitializerError. В нестатическом — требуется throws в конструкторах.","Исключение в static {} блоке — что произойдёт?","Явный throw в static блоке — ошибка компиляции. RuntimeException → ExceptionInInitializerError. В нестатическом блоке — нужен throws в конструкторах.",[28,18,29,30],"исключение в блоке инициализации Java","static блок исключение","ошибка инициализации класса","Для статического блока: явное выбрасывание checked-исключения — ошибка компиляции. RuntimeException приведёт к ExceptionInInitializerError, класс не будет инициализирован. Для нестатического блока: checked-исключения должны быть объявлены в throws всех конструкторов, иначе ошибка компиляции. При возникновении исключения объект не будет создан.",true]