Модификаторы доступа в Java

Модификаторы доступа в Java - манекены

Объектно-ориентированное программирование, такое как Java, сильно скрывает детали. Программисты, которые пишут один фрагмент кода, не должны возиться с деталями внутри кода другого программиста. Это не вопрос безопасности и секретности. Это вопрос модульности.

Когда вы скрываете детали, вы держите хитрости внутри одного фрагмента кода закрученным и сломанным другим фрагментом кода. Ваш код поставляется в приятных, дискретных, управляемых кусках. Сведение к минимуму сложности. Вы делаете меньше ошибок. Вы экономите деньги. Вы помогаете миру во всем мире.

Вы можете найти множество примеров использования частных полей. Когда поле объявляется приватным, оно скрыто от всех внешних вмешательств. Это укрытие повышает модульность, минимизирует сложность и т. Д.

В другом месте приведены примеры вещей, объявленных публичными. Точно так же, как публичная знаменитость, поле, объявленное публично, остается открытым. Множество людей, вероятно, знают, что такое зубная паста, которую использовал Элвис, и любой программист может ссылаться на публичное поле, даже на поле, которое не называется Элвис.

В Java слова public и private называются модификаторами доступа . Без сомнения, вы видели поля и методы без модификаторов доступа в своих объявлениях. Говорят, что метод или поле такого типа имеют доступ по умолчанию. Многие примеры используют доступ по умолчанию, не создавая большой проблемы. Иногда это нормально.

И вы можете узнать о еще одном модификаторе доступа. Это защищенный модификатор доступа. В Java доступ по умолчанию для члена класса - это доступ к пакету. Член, объявленный без слова public, private, или protected перед ним доступен в пакете, в котором находится его класс.

Названия пакетов со всеми их точками и субпартментами могут быть немного обманчивыми. Например, когда вы пишете программу, которая реагирует на нажатия кнопок, вы обычно импортируете классы из двух отдельных пакетов. В одной строке вы можете импортировать java. АВТ. *; , В другой строке вы можете импортировать java. АВТ. мероприятие. *; , Импорт всех классов из java. awt не автоматически импортирует классы из java. АВТ. пакет событий.