Konstruktor

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Co to jest konstruktor?

Konstruktor to specjalna metoda klasy, która jest wywoływana automatycznie podczas tworzenia nowego obiektu. Najczęściej służy do inicjalizacji pól obiektu, czyli nadania im wartości początkowych.

Konstruktor nie jest zwykłą funkcją uruchamianą ręcznie przez programistę. Wywołuje się sam w momencie użycia instrukcji tworzącej obiekt, np. new.

Do czego służy konstruktor?

Konstruktor pozwala:
- ustawić wartości początkowe pól obiektu,
- przekazać dane wymagane do poprawnego działania obiektu,
- przygotować obiekt do użycia,
- uniknąć tworzenia obiektów w niepełnym lub błędnym stanie.

Przykład w PHP

class Uzytkownik {
    public $imie;

    public function __construct($imie) {
        $this->imie = $imie;
    }
}

$u = new Uzytkownik("Anna");
echo $u->imie;

W PHP konstruktorem jest metoda __construct(). Zostaje ona uruchomiona automatycznie po wykonaniu new Uzytkownik("Anna").

Przykład w JavaScript

class Uzytkownik {
    constructor(imie) {
        this.imie = imie;
    }
}

const u = new Uzytkownik("Anna");
console.log(u.imie);

W JavaScript konstruktorem jest metoda constructor().

Konstruktor a destruktor

Konstruktor działa przy tworzeniu obiektu, natomiast destruktor jest związany z niszczeniem obiektu lub zwalnianiem zasobów. W pytaniach egzaminacyjnych warto zapamiętać: inicjalizacja pól przy tworzeniu obiektu oznacza konstruktor.