Назад Уперед Зміст

Властивості класу

Як правило, поля класу описують з модифікатором доступу privat.

Тому доступ до таких полях з інших класів неможливий. Будь-яка спроба прочитати значення з цього поля або записати в нього щось, викликає помилку.

Однак часто доступ до полів буває потрібен. Для цього використовуються властивості. Властивості ще називають: методи аксессор.

Напишемо властивості для кожного поля цього класу.

Як ми бачимо, кожне властивість має заголовок і тіло. У заголовку вказується модифікатор доступу (зазвичай public), тип повертається властивістю значення (у нас double) і ім'я властивості. Ім'я властивості таке ж як ім'я поля, якому воно відповідає, тільки починається з великої літери.

В тілі оголошено два методу get і set. Більше нічого в тілі властивості оголошувати не можна. Метод get має ключове слово return і повертає якесь значення (зазвичай значення поля). Якщо цей метод є, то значення відповідного поля можна читати.

Метод set має ключове слово value і привласнює (встановлює) це значення полю об'єкта. Якщо цей метод є, то відповідному полю можна привласнювати значення.

В якості може бути відсутнім get або set. Тоді поле буде тільки для читання або тільки для запису.

Описані вище властивості можна використовувати в іншому класі і це не викличе ніякої помилки. Звернення до властивості схоже на звернення до методу, тільки круглі дужки, як в методі, не пишуть.

Властивості разом з модифікаторами доступу реалізують механізм захисту даних від несанкціонованого доступу.

Рекомендації з програмування

Клас як тип, визначений користувачем, повинен містити:

  1. Приховані (private) поля;
  2. Конструктор без параметрів, що привласнює полях нульові значення;
  3. Конструктор з параметрами, що привласнює полях значення параметрів;
  4. Методи-аксессор (так інакше називають властивості) для всіх полів;
  5. Набір методів, що реалізують поведінку об'єктів класу. Для доступу до методів з інших класів їх потрібно описувати з специфікатором public.

Назад Уперед Зміст