Що таке метод конструктора? Навіщо його використовувати?

pic

При створенні об'єктів важливо дотримуватись певних правил. Сьогодні ми поговоримо про один з таких методів, що використовується для налаштування об'єкта — це конструктор.

Конструктор

Конструктор — це спеціальний метод, який автоматично виконується при створенні об'єкта. В кожному класі має бути хоча б один конструктор.

Як створюється метод-конструктор?

Метод-конструктор оголошується всередині класу, де створюється об'єкт, і зазвичай перед його іменем ставиться ключове слово "public" (хоча це не завжди обов'язково). Ім'я методу повинно збігатися з ім'ям класу.

Вихід:

Метод конструктора був виконаний

Як видно, конструктор виконується одразу після створення об'єкта.

ДЕФОЛТНИЙ КОНСТРУКТОР

Це конструктор, який компілятор створює автоматично, і він завжди присутній у фоновому режимі, хоча не видно в класі. Цей конструктор не приймає параметрів і не виконує жодних дій. Він лише присвоює значення за замовчуванням для властивостей об'єкта.

Вихід:

Ім'я користувача: null

Вік користувача: 0

Як видно, навіть якщо ми не присвоїли значення властивостям об'єкта, Java все одно автоматично присвоїла "null" для змінної типу String і "0" для змінної типу int.

Важлива примітка: Якщо ми додаємо конструктор з параметрами в клас, дефолтний конструктор автоматично видаляється. Тому, щоб дефолтний конструктор залишався доступним, після додавання конструктора з параметрами потрібно явно оголосити конструктор без параметрів.

КОНСТРУКТОР БЕЗ ПАРАМЕТРІВ

Це конструктор, який не приймає параметрів. Відмінність від дефолтного конструктора в тому, що в цьому можна виконувати додаткові операції.

Вихід:

Конструктор без параметрів був виконаний

Як видно, цей конструктор не прийняв параметрів, але був викликаний при створенні об'єкта і виконав додаткові операції, наприклад, виведення повідомлення на екран.

КОНСТРУКТОР З ПАРАМЕТРАМИ

Цей конструктор приймає параметри.

Як видно, при створенні об'єкта ми передали два параметри в метод-конструктор. Конструктор використав ці параметри для виведення інформації про користувача. Конструктор з параметрами часто використовується для налаштування об'єкта під час його створення.

Важливість використання конструктора

  1. Однією з основних причин для створення конструктора в класі є ініціалізація властивостей об'єкта значеннями. Конструктор отримує значення як параметри та присвоює їх властивостям об'єкта, тим самим налаштовуючи об'єкт.

  2. Хоча можна було б присвоїти значення кожній властивості окремо, в класі може бути багато змінних, і можна забути призначити значення деяким з них. Це може призвести до помилок у програмі. Використання конструктора дозволяє уникнути таких ситуацій, оскільки він забезпечує ініціалізацію всіх властивостей. Таким чином, ми отримуємо більш компактний і надійний код, а також економимо час.

Як ми бачимо, конструктори дозволяють налаштовувати об'єкти, але також важливо, щоб код був чистим і зрозумілим. Наприклад, значення для змінної name можна було б присвоїти як "emre", однак важливо пам'ятати, що в проекті може бути багато класів і змінних, і кожного разу треба обирати відповідні імена параметрів. Проектування програм є складним процесом, і важливо не витрачати час на вибір імен параметрів, щоб не ускладнювати собі завдання.

Використання this

Ключове слово this дає доступ до властивостей поточного класу. Наприклад, при написанні this.name, ми отримуємо доступ до змінної name в класі User. Також можна отримати доступ до методів класу (і, відповідно, до методів конструктора). Це дозволяє без помилок створювати об'єкти.

Заглиблюючись у програмування на основі об'єктів і намагаючись краще зрозуміти цей процес, ми сьогодні обговорили метод конструктора. Сподіваюся, зустрінемося в наступній статті.

Наступна тема: Інкапсуляція (ENCAPSULATION)

Джерела:

1- Java Tutorials (Oracle)

2- Java Tutorial (w3schools)

3- CodeJava

Перекладено з: Constructor Metod Nedir? Neden Kullanılır?