Существуют ли какие-либо модификаторы доступа для статических блоков в Java - PullRequest
1 голос
/ 21 января 2010

Поскольку у нас есть модификаторы доступа для методов и конструкторов, есть ли у нас это для статических блоков? если да, каково значение?

Ответы [ 5 ]

5 голосов
/ 21 января 2010

Нет, их нет. И вы не можете также вызывать статические блоки, поэтому в этом нет особого смысла.

3 голосов
/ 21 января 2010

В справочнике по языку Java тоже нет.

Определение синтаксиса статического инициализатора:

static Block

Ни больше, ни меньше.

2 голосов
/ 21 января 2010

Модификаторы доступа (в широком смысле) говорят вам, что вы можете делать с членами класса или экземпляра (такими как методы и поля) - например, кому разрешен доступ к ним (или как вы можете получить к ним доступ, учитывая, кто вы есть). Со статическим инициализатором у вас нет ни поля, ни метода - только некоторый код, который нужно выполнить.

0 голосов
/ 21 января 2010

Как вы ожидаете получить доступ к статическому блоку? я думаю, что вы не можете вызвать его напрямую, так зачем использовать модификаторы доступа?

0 голосов
/ 21 января 2010

Не думаю, что у вас может быть модификатор доступа для статических блоков.

Я предполагаю, что вы хотите написать что-то вроде:

private static {
   // do something
}

, что семантически неверно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...