Доступ означает подход, а модификаторы доступа — это те ключевые слова, которые определяют пространство имен переменных, методов, конструкторов, классов и т. д. Модификатор доступа — это ключевые слова в объектно-ориентированных языках, которые позволяют понять, кто может приблизиться к этому конкретный член данных, метод, класс и т. д.
Модификаторы доступа в Java
Модификаторы доступа в языке Java помогают ограничить область действия класса, конструктора, переменной, метода или члена данных. В языке Java доступны четыре типа модификаторов доступа.
- По умолчанию — ключевое слово не требуется: доступно для пакета
- Private: доступно для только класс
- Защищено: доступно для пакета и всех подклассов
- Общедоступно: доступно для всего мира
# Открытое ключевое слово в Java
Ключевое слово public используется для обозначения модификатора public. А модификатор public указывает, что весь класс может получить доступ к данной переменной или методу. Также возможен доступ к нему с помощью других пакетов, классов, подклассов.
В основном мы используем общедоступные спецификаторы, поэтому он имеет наиболее обширную область действия среди всех видов доступа. модификаторы.
Наша основная функция всегда является общедоступной и не может быть частной или какой-либо другой.
class Java {String s = new String (" nДобро пожаловать в приложение n");} class publ {public static void main (String args []) {Java ob = new Java (); System.out.println (ob.s); }}
См. следующий результат.
Из вышеприведенного вывода мы должны использовать общедоступный спецификатор и использовать этот класс в другом классе в другом пакете.
#Private Keyword в Java
Ключевое слово Private используется для обозначения модификатора private. Его класс может получить к нему доступ. Другие пакеты и подклассы не могут получить к нему доступ в своем классе. Это в некоторой степени похоже на последнее ключевое слово. Самый ограниченный класс во всех классах. Интерфейсы не могут быть частными.
Частный означает «видимый только внутри включающего класса».
См. следующую программу.
import java.io. *; class A {private void display () {System.out.println ("Hello, Welcome to appdividend");} } class priv {public static void main (String args []) {A obj = new A (); obj.display (); }}
См. следующий результат.
В этом примере мы не можем получить доступ к закрытым переменным. Таким образом, он показал ошибку и дает нам доказательства.
#Protected Keyword in Java
Keyword Protected используется для указывают модификатор protected, и к нему могут обращаться все классы и подклассы одного и того же пакета, а также подклассы разных пакетов.
Не подклассы других пакетов не могут получить доступ к этому. Модификаторы защищенного доступа также не могут использоваться классами и интерфейсами, а члены структуры также не могут быть защищены, поскольку они не способствуют наследованию.
Он чем-то похож на модификатор доступа по умолчанию, но разница в том, что подклассы могут получить к нему доступ.
Методы или члены данных, объявленные как защищенные, доступны в пределах тот же пакет или подклассы в другом пакете.
См. следующий код.
import java.io. *; class A {protected void display () {System. out.println (" nПривет, добро пожаловать в appdivident n");}} class priv {public static void main (String args []) {A obj = new A (); obj.display (); }}
См. следующий результат.
В приведенном выше примере мы не можем получить доступ к защищенным переменным.
Итак, он показал ошибку и дает нам доказательства.
# Ключевое слово по умолчанию в Java
Ключевое слово по умолчанию не используется. Когда мы ничего не замечаем, будет модификатор по умолчанию. Члены, не объявленные с помощью спецификаторов доступа, доступны только в пределах одного пакета. Мы не можем использовать значение по умолчанию для методов в интерфейсе.
Члены данных, класс или методы, которые не объявлены с использованием каких-либо модификаторов доступа, т. Е. Имеют модификатор доступа по умолчанию, доступны только в одном пакете .
См. следующий код.
class Java {int a = 541;} class Main {public static void main (String args []) {Java ob = new Java (); System.out.println (" nЗначение a равно" + ob.a); }}
См. следующий результат.
В приведенном выше примере мы не можем получить доступ к значениям по умолчанию.
Итак, он показал ошибку и дает нам доказательства.
# Требуются модификаторы доступа
- Они позволяют поддерживать безопасность и конфиденциальность класса.
- Он используется для облегчения инкапсуляции программы.
# Контроль доступа и наследование
Применяются следующие правила для унаследованных методов.
- Методы, которые объявлены общедоступными в суперклассе, также должны быть общедоступными во всех подклассах.
- Методы, которые объявлены защищенными в суперклассе, должны быть либо защищенными, либо общедоступными в подклассах; они не могут быть частными.
-
Методы, объявленные частными, вообще не наследуются, поэтому для них нет правила.
# Модификаторы без доступа
Для классов вы можете использовать final или abstract:
Модификатор | Описание |
---|---|
final | Класс не может быть унаследован другими классами. |
abstract | Класс не может использоваться для создания объектов (если мы хотим получить доступ к абстрактному классу, он должен быть унаследован от другого класса. Подробнее о наследовании вы узнаете в главе «Наследование») |
Наконец, работа с модификаторами доступа в примере Java-учебника завершена.