Що таке конструктор в об’єктно-орієнтованому програмуванні
У цій статті ми продовжимо вивчати об'єктно-орієнтоване програмування. У минулій статті ми розповіли: Що таке клас, інкапсуляція, поліморфізм, успадкування. Сьогодні ми дізнаємося: Що таке конструктор в об'єктно-орієнтованому програмуванні і як його використовувати при написанні програм в ООП стилі.
Що таке конструктор
Конструктор в об'єктно-орієнтованому програмуванні - це спеціальний метод, що дозволяє форматувати початковий стан класу при створенні його примірника.
У минулій статті. при розгляді парадигми ООП, ми дізналися, що таке класи і навчилися створювати екземпляри класів.

Давайте освіжимо знання і напишемо простий клас на мові програмування PHP.
Приклад простого класу:
Якщо виконати програму, на моніторі ви побачите назву моделі автомобіля: car
Як я писав у попередній статті. в об'єктно-орієнтованому програмуванні все є об'єктами.
Наш Car - поки ще не дуже функціональний автомобіль. Він не вміє їздити, а знає тільки яка в нього модель $ model, колір $ color, максимальна швидкість $ maxSpeed і поточна швидкість $ currentSpeed.
Створимо ще один автомобіль:
$ SuperCar = new Car ();
Наш superCar нічим не відрізняється від звичайного $ car. І це дуже погано, тому що нашому покупцеві ми пообіцяли продати автомобіль з більш високими характеристиками, ніж минулий автомобіль.
Ми можемо поставити властивості автомобіля після створення екземпляра класу, але це буде виглядати перед покупцем приблизно так: Зараз ми замінимо двигун, перефарбуємо, зачекайте будь ласка годин 20, а ще краще тиждень. Думаю, що покупцеві це не сподобається і він піде з нашого автомобільного салону.
В об'єктно-орієнтованому програмуванні прийнято форматувати змінні при створенні екземпляра класу. Для цього ми скористаємося конструктором.
На мові програмування PHP порожній конструктор виглядає так:
Давайте вбудуємо його в наш клас Car і створимо можливість привласнювати змінним значення, при створенні екземпляра класу:
А зараз створимо відразу два автомобілі і задамо значення властивостей при створенні екземплярів класів:
Як ви бачите, у звичайного автомобіля (клас Car) ми задали модель = car, колір = red, максимальну швидкість = 100, поточну швидкість = 0, а для supercar ми задали поліпшені характеристики при створенні екземпляра класу.
У цій статті ми показали в прикладах на мові програмування PHP, що таке конструктори і як присвоювати значення у змінних при створенні екземплярів класів.
Вступайте в нашу групу VK і слідкуйте за оновленнями.
Доступ до закритого розділу сайту