Junior — Middle
Може ли да се креира ланац наслеђивања између апстрактних класа?
sobes.tech АИ
Одговор од АИ
Da, u PHP-u je moguće kreirati lanac nasleđivanja između apstraktnih klasa. Apstraktna klasa može naslediti drugu apstraktnu klasu, a podklasa može implementirati ili redefinisati apstraktne metode roditelja.
Primer:
abstract class Animal {
abstract public function makeSound();
}
abstract class Mammal extends Animal {
public function breathe() {
echo "Dišem vazduh";
}
}
class Dog extends Mammal {
public function makeSound() {
echo "Hav-Hav";
}
}
$dog = new Dog();
$dog->breathe(); // Ispisaće: Dišem vazduh
$dog->makeSound(); // Ispisaće: Hav-Hav
Na ovaj način, lanac nasleđivanja apstraktnih klasa omogućava građenje hijerarhija sa delimičnom implementacijom i obaveznim metodama za implementaciju.