Мы уже встречались с модификаторами доступа public и private. Элементы, помеченные ключевым словом public, могут использоваться любым классом. Приватные элементы, то есть те, при определении которых использовались ключевое слово private, могут использоваться только тем классом, в котором они были определены. Если ни один модификатор доступа не указан, то элемент(класс, метод или переменная) доступен всем методам в том же самом пакете.
В процессе работы над программой разработчики часто забывают указать ключевое слово private. Вот пример из класса Window, принадлежащего пакету java.awt, который поставляется с пакетом JDK:
1 2 3 4 |
public class Window extends Container { String warningString; .... } |
Обратите внимание, что переменная warningString не имеет модификатора доступа private! Это значит, что методы всех классов в пакете java.awt могут обращаться к ней и изменить ее значение(например, присвоить ей строку «Поверь мне!»). Фактически все методы, имеющие доступ к WarningString, принадлежат классу Window, поэтому эту переменную смело можно было бы обьявить как приватную.
Вы в поисках хорошего юриста? Советуем вам бесплатная юридическая помощь онлайн. Все абсолютно бесплатно.
По умолчанию пакеты не являются приватными. Это значит, что каждый может добавлять в пакеты свои классы.