Sobes.tech
Junior

Wat is een extensie (extend) in de context van PHP?

sobes.tech AI

Antwoord van AI

Uitbreiding, of overerving, in PHP is een mechanisme waarmee een klasse (subklasse of afgeleide klasse) eigenschappen en methoden van een andere klasse (ouder- of basisklasse) kan erven.

Het sleutelwoord extends wordt gebruikt om de ouderklasse aan te geven.

Voordelen van overerving:

  • Herbruikbaarheid van code: Het is niet nodig om dezelfde code meerdere keren te schrijven.
  • Uitbreidbaarheid: De subklasse kan nieuwe eigenschappen en methoden toevoegen of bestaande overschrijven.
  • Polymorfisme: Objecten van verschillende klassen kunnen worden behandeld als objecten van een gemeenschappelijke ouderklasse.

Voorbeeld:

<?php

class Animal {
    public function eat() {
        echo "Dier eet.";
    }
}

class Dog extends Animal {
    public function bark() {
        echo "Hond blaft.";
    }
}

$dog = new Dog();
$dog->eat(); // Aanroep van de methode uit de ouderklasse
$dog->bark(); // Aanroep van de methode uit de subklasse

?>

De subklasse erft niet:

  • Privé-eigenschappen en methoden (hoewel ze in het object bestaan, kunnen ze niet direct worden opgeroepen vanuit de subklasse).
  • De constructor van de ouderklasse wordt niet automatisch aangeroepen bij het maken van een object van de subklasse, tenzij dit expliciet wordt aangegeven met parent::__construct().