Спецификаторы доступа для классов или интерфейсов в Java

Опубликовано: 15 Февраля, 2022

В Java методы и члены данных класса / интерфейса могут иметь один из следующих четырех спецификаторов доступа. Спецификаторы доступа перечислены в соответствии с порядком их ограничения.

1) частный (доступен в пределах класса, где он определен)
2) по умолчанию или частный пакет (когда не указан спецификатор доступа)
3) protected (защищенный)
4) общедоступный (доступен из любого класса)

Но сами классы и интерфейсы могут иметь только два спецификатора доступа при объявлении вне любого другого класса.
1) public
2) по умолчанию (когда не указан спецификатор доступа)

We cannot declare class/interface with private or protected access specifiers. For example, following program fails in compilation.

//filename: Main.java
protected class Test {}
  
public class Main {
  public static void main(String args[]) {
  
  }
}

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

Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по теме, обсужденной выше.

Вниманию читателя! Не переставай учиться сейчас. Ознакомьтесь со всеми важными концепциями Java Foundation и коллекций с помощью курса "Основы Java и Java Collections" по доступной для студентов цене и будьте готовы к работе в отрасли. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .