Programowanie obiektowe > Lekcja 3
$this
Ostatnia modyfikacja: 01.06.2021
$this
to specjalna zmienna, dostępna tylko wewnątrz obiektu. Możemy się przy jej użyciu odwołać do właściwości lub metody w danym obiekcie.
Jak to działa w praktyce? Bardzo prosto:
<?php
class Car
{
private string $color = 'black';
public function getColor(): string
{
return $this->color;
}
}
$car = new Car();
echo $car->getColor(); // result: black
Ten kod chyba nawet nie wymaga specjalnego wyjaśnienia. Wywołujemy publiczną metodę getColor() obiektu klasy Car
, w której następuje odczyt prywatnej właściwości $color
. Warto zauważyć, że odwołując się przez $this
również nie używamy znaku $
na początku nazw właściwości.
Podobnie możemy postąpić z metodami - bez problemu wywołamy z wnętrza obiektu inną jego metodę:
<?php
class Car
{
private string $color = 'black';
private function setNewColor(): void
{
$this->color = 'blue';
}
public function getColor(): string
{
$this->setNewColor();
return $this->color;
}
}
$car = new Car();
echo $car->getColor(); // result: blue
I to w zasadzie tyle. Prosta rzecz, a jakże użyteczna.
Ćwiczenia
-
Stwórz klasę
Person
z prywatnymi właściwościaminame
orazcity
. Przygotuj również metodygetName()
igetCity()
zwracające te dane.
Komentarze