Добрый день, это канал посвященный небольшим инструкциям, которые я пишу для себя и людей, которые являются начинающими разработчиками.
В данной статье рассмотрим доступ к полям и методам класса.
Методы доступа
Для начала разберем модификаторы доступа, их всего 3 public, protected и private. Если никакой из модификаторов не определен, то стандартным считается public, это значение говорит нам о том, что поле с таким модификатором всегда видно и доступно для редактирования из вне. Как показано ниже.
Для того, чтобы запретить явно изменять значение полей можно использовать protected и private. Данные модификаторы доступа запрещают изменения из вне, например private.
В данном случае мы видим, что поле name теперь нельзя использовать от слова совсем никому, однако, с данным полем может взаимодействовать конструктор класса и его методы.
Давайте теперь посмотрим на отличия между protected и private:
Между ними нет большой разницы, оба они запрещают доступ к ключам и методам, к которым указаны, но только protected разрешает наследникам доступ к этим ключам/методам, а private нет.
Методы доступа
Мы разобрались как запретить изменять ключи в объектах, теперь давайте познакомимся с геттерами и сеттерами, которые помогут нам регулировать то, что юзер пишет get и set:
Задаем публичный метод get и публичный метод set, которые имеют какое-то имя и теперь они работают как просто обычные поля, хотя на самом деле являются функциями set и get.
Свойства только для чтения
Для того, чтобы объявить свойство только для чтения необходимо написать к свойству readonly:
В такой ситуации мы сможем без проблем читать данное свойство, но не сможем его изменять, так как изменение этого свойства приведе к ошибке компиляции.
Спасибо за прочтение статьи, подписывайтесь и оставляйте комментарии, о чем еще написать.