W programowaniu obiektowym w PHP klasa może zawierać przede wszystkim:
- właściwości – czyli zmienne należące do obiektu,
- metody – czyli funkcje zdefiniowane wewnątrz klasy.
To rozróżnienie bardzo często pojawia się w zadaniach egzaminacyjnych.
Jak rozpoznać właściwość?
Właściwość w PHP jest zapisywana jako zmienna poprzedzona znakiem $ wewnątrz klasy, na przykład:
class Uczen {
public $imie;
public $nazwisko;
}
W przykładzie imie i nazwisko to dwie właściwości.
Jak rozpoznać metodę?
Metoda to funkcja zadeklarowana w klasie z użyciem słowa function, na przykład:
class Uczen {
public function przedstawSie() {
echo "Cześć";
}
}
przedstawSie() jest metodą.
Analiza przykładu egzaminacyjnego
class a {
public $b;
public $c;
public function d() {}
}
W tej klasie zdefiniowano:
- public $b; – właściwość,
- public $c; – właściwość,
- public function d() {} – metodę.
Zatem klasa zawiera:
- 2 właściwości,
- 1 metodę.
Najważniejsza zasada egzaminacyjna
- zapis z
$wewnątrz klasy najczęściej oznacza właściwość, - zapis z
functionoznacza metodę, - sama klasa nie jest obiektem – obiekt powstaje dopiero po utworzeniu instancji, np.:
$x = new a();
Wniosek
Jeśli w klasie widzisz dwa pola z $ i jedną deklarację function, to oznacza to dwie właściwości i jedną metodę. W takim zadaniu poprawna odpowiedź brzmi: dwie właściwości.