Подтвердить что ты не робот

Какова область переменных, объявленных внутри статического блока в java?

Являются ли переменные, объявленные внутри статического блока доступными где-нибудь еще? Какой "вид" члена есть они (т.е. Являются ли они статическим членом тоже?)

4b9b3361

Ответ 1

Обычно программистам не нужно объявлять какие-либо переменные внутри статических блоков, как правило, это только для обеспечения инициализации статических переменных для использования всеми экземплярами класса (в зависимости от области статической переменной).

Переменные, объявленные внутри статического блока, будут локальны для этого блока, как и переменные методов и конструкторов.

JDK Docs

Ответ 2

Переменные, объявленные внутри блока, доступны только внутри этого блока. Статический или нет.

Переменные, объявленные внутри статического метода, являются статическими. Они могут обращаться только к другим статическим переменным или глобальным переменным.

Ответ 3

они похожи на переменные метода. Доступно только в области блока.

Ответ 4

Нет, не видно за пределами блока. Они действуют как локальные переменные - считают статический блок анонимной функцией, вызываемой при инициализации класса. Они не являются статическими элементами.