Junior — Middle
Je možné vytvoriť reťazec dedičstva medzi abstraktnými triedami?
sobes.tech AI
Odpoveď od AI
Áno, v PHP je možné vytvoriť reťazec dedičnosti medzi abstraktnými triedami. Abstraktná trieda môže dediť od inej abstraktnej triedy a podtrieda môže implementovať alebo prepísať abstraktné metódy rodiča.
Príklad:
abstract class Animal {
abstract public function makeSound();
}
abstract class Mammal extends Animal {
public function breathe() {
echo "Dýcham vzduch";
}
}
class Dog extends Mammal {
public function makeSound() {
echo "Haf-Haf";
}
}
$dog = new Dog();
$dog->breathe(); // Vypíše: Dýcham vzduch
$dog->makeSound(); // Vypíše: Haf-Haf
Týmto spôsobom umožňuje reťazec dedičnosti medzi abstraktnými triedami budovať hierarchie s čiastočnou implementáciou a povinnými metódami na implementáciu.