Инкапсуляция данных: основы объектно-ориентированного программирования

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

Например, если мы проектируем объект person, мы можем создать личные поля для хранения имени, фамилии и адреса человека. Значения этих трех полей объединяются, чтобы создать состояние объекта. Мы также могли бы создать метод displayPersonDetails для отображения значений имени, фамилии и адреса на экране.

Далее, мы должны сделать поведение, которое обращается и изменяет состояние объекта. Это может быть достигнуто тремя способами:

Например, мы можем спроектировать объект person для двух методов конструктора. Первый не принимает никаких значений и просто устанавливает для объекта состояние по умолчанию (т. Е. Имя, фамилия и адрес будут пустыми строками). Второй устанавливает начальные значения для имени и фамилии из значений, переданных ему. Мы также можем создать три метода доступа getFirstName, getLastName и getAddress, которые просто возвращают значения соответствующих закрытых полей. Создайте поле мутатора с именем setAddress, которое будет устанавливать значение приватного поля адреса.

instagram viewer

Наконец, мы скрываем детали реализации нашего объекта. Пока мы придерживаемся закрытых полей состояния и общедоступных поведений, внешний мир не сможет узнать, как объект работает внутри.

instagram story viewer