GAJDAW


PROGRAMY

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24


Programowanie obiektowe w PHP5

Włodzimierz Gajda





12. Wywoływanie metod klas bazowych

W metodach klas potomnych zachodzi niekiedy konieczność wywołania przysłoniętych metod klas bazowych. Zadanie to realizuje operator zakresu parent.

Klasa B dziedziczy po klasie A. Obie klasy mają zdefiniowaną metodę o nazwie funkcja():

...brak dostępu...

Jeśli w implementacji metody funkcja() klasy B chcemy wywołać metodę o tej samej nazwie (tj. funkcja()) klasy A, to stosujemy operator parent. Pominięcie operatora parent powoduje, że metoda funkcja() jest nieznana (z racji na brak referencji $this). Natomiast użycie referencji $this skutkuje tym, że metoda staje się rekurencyjna.

Powyższe rozwiązanie jest szczególnie często stosowane w konstruktorach. Konstruktor klasy potomnej bardzo często wywołuje konstruktor klasy bazowej.

...brak dostępu...



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24