Почему интерфейсные переменные являются статическими и окончательными по умолчанию?

Почему интерфейсные переменные являются статическими и окончательными по умолчанию в Java?

258
задан peSHIr 9 September 2010 в 00:24
поделиться

3 ответа

Из FAQ по дизайну интерфейса Java от Филипа Шоу:

Переменные интерфейса статичны, потому что интерфейсы Java не могут быть созданы сами по себе; значение переменной должно быть присвоено в статическом контексте, в котором не существует экземпляра. Последний модификатор гарантирует, что значение, присвоенное переменной интерфейса, является истинной константой, которую нельзя переназначить программным кодом.

источник

255
ответ дан 23 November 2019 в 02:41
поделиться

статический - потому что интерфейс не может иметь никаких экземпляров. и окончательный - потому что нам не нужно его менять.

5
ответ дан 23 November 2019 в 02:41
поделиться

Потому что все остальное является частью реализации, а интерфейсы не могут содержать никакой реализации.

9
ответ дан 23 November 2019 в 02:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: