Dziedziczenie a porównywanie
Założenie: Zrozumieć, jak dziedziczenie wpływa na porównywanie obiektów w PHP i jak porównywać obiekty klas bazowych i pochodnych.
Krok po kroku:
- Definicja klasy bazowej: Stwórzmy klasę bazową
Animalz metodą__toString(), która zwraca nazwę zwierzęcia. - Definicja klasy pochodnej: Utwórzmy klasę pochodną
Dogdziedziczącą po klasieAnimali dodajmy do niej metodębark(). - Tworzenie obiektów: Utwórzmy obiekty klas
AnimaliDog. - Porównywanie obiektów: Spróbujmy porównać obiekty za pomocą operatora
==. Pamiętaj, że porównuje on referencje, a nie wartości. - Porównywanie wartości: Aby porównać wartości, musimy porównać właściwości obiektów, np. nazwy.
name = $name;
}
public function __toString() {
return $this->name;
}
}
?>
name == $dog->name); // false - nazwy są różne
?>
W tym przykładzie pokazaliśmy, jak dziedziczenie wpływa na porównywanie obiektów. Operator == porównuje referencje, a nie wartości obiektów. Aby porównać wartości, należy porównać poszczególne właściwości obiektów.
Zachęcamy do dalszego zgłębiania tematu dziedziczenia w PHP!