Модификаторы доступа в java — это специальные ключевые слова, которые по порядку используются для указания доступности методов, классов, конструкторов и других членов класса.
Слово модификаторы доступа может показаться или подумать, что это концепция, но модификаторы доступа — это некоторые специальные ключевые слова, которые мы используем при написании программ. Java имеет два типа модификаторов: модификаторы доступа и модификаторы отсутствия доступа.
В этой статье мы прочитаем о модификаторах доступа в java, модификаторы доступа определяют доступность или область действия поля, метода, конструктора или класса. В Java есть четыре ключевых слова модификаторов доступа, о каждом из них мы подробно прочтем в этой статье.
Объем статьи
- В этом мы прочитаем обо всех четырех ключевых словах модификаторов доступа в Java с соответствующими примерами и увидим, как реализовать каждый из них в java.
- В этой статье мы также прочитаем о модификаторах доступа Java с переопределением методов.
- С дополнительными примерами и кодом мы увидим, как реализовать модификаторы доступа в java.
Введение
Модификаторы доступа в java определяют видимость или область действия программной сущности, такой как класс, метод, переменная или конструктор, а модификаторы без доступа используются для определения поведения сущности.
Давайте рассмотрим пример, чтобы понять это, который предполагает, что есть синхронизированный метод или блок, который указывает, что он может работать в многопоточной среде, а конечная переменная указывает, что это константа.
Модификаторы доступа важны, так как с помощью модификаторов доступа мы можем получить доступ к другим классам, методам или переменным. Используя модификаторы доступа, мы также можем ограничить доступ к различным классам, методам, конструкторам и переменным, а также обеспечить инкапсуляцию и возможность повторного использования java-сущностей.
Теперь давайте прочитаем о типах модификаторов доступа в java. Таким образом, в Java в основном существует четыре типа модификаторов доступа: в основном это закрытый, стандартный, защищенный и общедоступный. Это четыре ключевых слова модификаторов доступа в java.
Теперь давайте прочитаем о каждом из четырех методов с помощью соответствующих примеров и пояснений в java:
- Частный
- Общественный
- Защищено
- По умолчанию
Во-первых, давайте прочитаем ключевое слово private в java:
Модификатор закрытого доступа в Java
Когда какая-либо переменная или любой метод объявлены как закрытые, доступ к этому конкретному классу или методу за пределами класса невозможен. Уровень доступа приватного модификатора находится только внутри класса.
Внешние члены класса не могут получить доступ к закрытым членам. Классы и интерфейсы не могут быть закрытыми. Любой другой класс того же пакета не сможет получить доступ к этим членам.
Все классы или интерфейсы верхнего уровня не могут быть объявлены как частные, потому что слово «частный» означает «видимые только в охватывающем классе», а слово «защищенный» означает «те свойства, которые видны только в охватывающем классе и любых подклассах». не относится к классам высшего уровня.
Теперь давайте посмотрим на пример в java, чтобы понять концепцию модификатора закрытого доступа в java:
открытый класс вычислить {
// здесь мы объявили его с модификатором доступа private
частное строковое имя;
}
общественный класс Основной {
public static void main(String[] main){
// здесь мы создаем объект вычисления
вычислить кал = новый кал();
// на этом шаге мы обращаемся к приватной переменной и полю из другого класса, но получим ошибку
cal.name = «модификатор закрытого доступа в java»;
}
}
Выход
Ошибка: имя имеет частный доступ в расчете
cal.name = «модификатор закрытого доступа в java»;
В приведенном выше коде мы получим ошибку, поскольку пытаемся получить доступ к частной переменной класса с именем calculate, и, поскольку мы изучили, что мы не можем получить доступ к этому методу/свойству, которое упоминается как закрытое в этом классе. Запустите приведенный выше код в своем редакторе для лучшего и ясного объяснения.
Давайте посмотрим еще один пример реализации ключевого слова модификатора частного доступа в java:
собака общественного класса {
// здесь мы объявили его с модификатором доступа private
частное строковое имя;
}
общественный класс Основной {
public static void main(String[] main){
// здесь мы создаем объект вычисления
собака d = новый d();
// на этом шаге мы обращаемся к приватной переменной и полю из другого класса, но получим ошибку
d.name = «Немецкая овчарка»;
}
}
Выход
Ошибка: имя имеет частный доступ в собаке
d.name = «Немецкая овчарка»;
В приведенном выше коде мы также получим сообщение об ошибке, поскольку пытаемся получить доступ к частной переменной класса с именем dog, и, как мы узнали, мы не можем получить доступ к этому методу/свойству, которое упоминается как закрытое в этом классе. Запустите приведенный выше код в своем редакторе для лучшего и ясного объяснения.
Теперь давайте изучим следующее ключевое слово модификатора доступа:
Модификатор доступа по умолчанию в Java
Словом, мы получаем представление о том, что когда модификатор доступа не используется, он по умолчанию обрабатывается как сам модификатор доступа по умолчанию. Если мы явно не указываем какой-либо модификатор доступа для классов, методов, переменных и т. д., то по умолчанию считается модификатор доступа по умолчанию.
по умолчанию в природе. Мы можем получить доступ только к модификатору доступа по умолчанию и только внутри пакета. Доступ к модификатору доступа по умолчанию в Java невозможен из-за пределов пакета java. если мы не укажем какой-либо модификатор доступа или уровень доступа, то он будет считаться значением по умолчанию только в java.
Теперь давайте рассмотрим несколько примеров, чтобы понять концепцию модификатора доступа по умолчанию в Java с помощью кода:
пакет по умолчаниюp1;
результат класса {
пустая печать () {
System.out.println(" Модификатор доступа по умолчанию в Java");
}
}
В приведенном выше примере результатом классификации является модификатор доступа по умолчанию, и этот результат класса будет доступен для всех классов, принадлежащих пакету defaultp1. Но предположим, что мы попытаемся использовать этот класс в любом другом классе, находящемся вне этого пакета, тогда мы получим ошибку компиляции.
Теперь давайте посмотрим на другой пример для лучшего объяснения:
// В этой Java-программе мы создадим пакеты и посмотрим, как будет работать модификатор доступа по умолчанию
пакет qwer1;
// В этой строке класс calculate имеет модификатор доступа по умолчанию, и если к нему обратиться извне в другом пакете, он покажет ошибку, которую мы увидим в этой программе
класс вычислить
{
недействительная печать ()
{
System.out.println(" Модификатор доступа по умолчанию в Java");
}
}
//Теперь мы создаем новую java-программу, чтобы проиллюстрировать ошибку при использовании класса из другого пакета с модификатором по умолчанию
пакет qwer2;
импортировать qwer1.*;
// Этот класс имеет модификатор доступа по умолчанию
класс вычислить1
{
public static void main (String args [])
{
// Доступ к классу Geek из пакета p1
вычислить объект = новый вычислить();
объект.дисплей();
}
}
Выход
Ошибка компиляции
В приведенном выше коде будет отображаться ошибка, потому что мы пытались получить доступ к функции print, поскольку она была модификатором доступа по умолчанию в другом пакете. Запустите приведенный выше код в своем редакторе для лучшего и ясного объяснения.
Теперь давайте изучим следующее ключевое слово модификатора доступа:
Модификатор защищенного доступа в Java
Увидев слово protected, мы можем понять, что член данных или метод, определенный под ключевым словом protected в java, доступен в одном и том же пакете или подклассах в разных пакетах.
Модификатор защищенного доступа в Java доступен внутри пакета, и к нему также можно получить доступ за пределами пакета, используя только процесс наследования.
Класс никогда не может быть объявлен защищенным в java. Спецификатор доступа ключевого слова protected в java предоставляет нам больше возможностей доступа, чем модификатор java по умолчанию.
Теперь давайте разберемся с этой концепцией на примере:
// В этом коде мы увидим, как реализовать ключевое слово модификатора доступа protected java
//Создание первого пакета
сначала упаковать;
открытый класс calculate1 {
защищенная недействительная печать ()
{
System.out.println («Модификатор защищенного доступа в Java»);
}
}
//создание второго пакета
пакет второй;
пакет импорта.*;
// использование наследования
второй класс распространяется первым {
public static void main (String args []) {
второй объект = новый второй();
объект.рассчитать1();
}
}
Выход
«Модификатор защищенного доступа в Java»
Поскольку мы знаем, что в модификаторе защищенного доступа в Java мы можем получить к нему доступ с помощью наследования, поэтому в приведенном выше примере мы только что реализовали вышеописанное. Запустите код в своем редакторе для лучшего и ясного объяснения.
Теперь давайте посмотрим на другой пример модификатора защищенного доступа в Java:
// В этом коде мы увидим, как реализовать ключевое слово модификатора доступа protected java
//Создание первого пакета
сумма пакета;
публичный класс sum1 {
защищенная недействительная печать ()
{
System.out.println («Модификатор защищенного доступа в Java»);
}
}
// создаем наш второй пакет
пакет qwer;
пакет импорта.*;
// используя наследование, мы можем получить доступ к защищенному модификатору доступа, поэтому мы просто реализуем его в нашем коде
класс расширяется первым {
public static void main (String args []) {
второй объект = новый второй();
объект.рассчитать1();
}
}
В этом примере также, как мы уже знаем, что в модификаторе защищенного доступа в Java мы можем получить к нему доступ с помощью наследования, поэтому в приведенном выше примере мы только что реализовали вышеизложенное, используя наследование в java. Запустите код в своем редакторе для лучшего и ясного объяснения.
Теперь давайте изучим следующее и последнее ключевое слово модификатора доступа в java:
Модификатор общего доступа в Java
Доступ к модификатору общего доступа в Java можно получить из любого места, и он является наиболее часто используемым модификатором доступа в java. Модификатор общего доступа в Java имеет самую широкую область действия среди всех других модификаторов. Модификатор общего доступа не имеет ограничения области действия. Если все методы, переменные, классы и т. д. объявлены общедоступными, то мы можем легко получить к ним доступ из любого места.
Теперь давайте посмотрим на несколько примеров, чтобы понять концепцию модификатора общего доступа в Java:
В этом коде мы увидим, как реализовать ключевое слово модификатора доступа public java.
открытый класс вычислить {
// общедоступная переменная
общедоступный интервал с;
// вот в этой строке мы объявили публичный метод
публичная недействительная печать () {
System.out.println («ключевое слово модификатора открытого доступа к Java»);
System.out.println («язык программирования Java»);
}
}
// вызов основной функции
общественный класс Основной {
public static void main( String[] args ) {
// здесь мы обращаемся к открытому классу
вычислить кал = новый Вычислить();
// здесь мы обращаемся к публичному методу
кал.принт();
}
}
Выход
«общедоступное ключевое слово модификатора доступа к Java»
«язык программирования java»
Здесь, в этом примере, мы объявили функцию, используя ключевое слово public в java, и, как мы знаем, мы можем получить доступ к методу от любого, кто использует спецификатор доступа public. Запустите приведенный выше код в своем редакторе для лучшего и ясного объяснения.
Теперь давайте посмотрим на другой пример, чтобы понять:
сначала упаковать;
открытый класс calculate1 {
// в этой строке мы объявили спецификатор открытого доступа
публичная недействительная печать ()
{
System.out.println («Модификатор общего доступа в Java»);
}
}
//здесь мы создаем второй пакет
пакет второй;
пакет импорта.*;
второй класс распространяется первым {
public static void main (String args []) {
второй объект = новый второй();
объект.print();
}
}
Выход
«Модификатор общего доступа в Java»
Здесь также мы использовали ключевое слово public и обращались к нему из другого класса,
Теперь давайте посмотрим, как модификаторы доступа Java используются с переопределением метода:
Модификаторы доступа Java с переопределением методов
Мы знаем, что переопределенный метод может иметь другой модификатор доступа. Если мы переопределяем какой-либо метод, то этот переопределенный метод не должен быть более строгим. e. Переопределение метода — это функция, которая позволяет подклассу или дочернему классу предоставлять конкретную реализацию метода, который уже предоставлен его суперклассом или его родителем. сорт.
Теперь давайте разберемся с этим на примере:
первый класс {
защищенная недействительная печать ()
{
System.out.println("Модификаторы доступа Java с переопределением методов");
}
}
второй публичный класс распространяется первым {
пустая печать () {
System.out.println("Модификаторы доступа Java с переопределением методов");
}
// вызов основного метода
public static void main (String args []) {
второй объект=новый второй();
объект.print();
}
}
Выход
Ошибка времени компиляции
Запустите приведенный выше код в своем редакторе для лучшего и ясного объяснения.
Заключение
- В java доступны четыре типа модификаторов доступа.
- Уровень доступа методов, конструкторов и классов можно изменить, применив в нем модификатор доступа.
- Модификатор приватного доступа используется чаще всего, и мы также должны использовать модификатор приватного доступа, если у нас нет других требований.
- Мы должны избегать использования публичных полей, за исключением констант.
- Основная причина использования модификаторов доступа связана с инкапсуляцией.
- Использование модификаторов доступа в java может предотвратить неправильное использование данных.
Повышение уровня кодирования
Спасибо, что являетесь частью нашего сообщества! Перед тем, как ты уйдешь:
- 👏 Хлопайте за историю и подписывайтесь на автора 👉
- 📰 Смотрите больше контента в публикации Level Up Coding
- 🔔 Подписывайтесь на нас: Twitter | ЛинкедИн | "Новостная рассылка"
🚀👉 Присоединяйтесь к коллективу талантов Level Up и найдите прекрасную работу