Middle
Wat verbiedt het gebruik van het sleutelwoord final in PHP?
sobes.tech AI
Antwoord van AI
Het sleutelwoord final in de context van PHP wordt gebruikt om overerving en overschrijving te voorkomen:
-
Finaliseren van een klasse: Het toepassen van
finalop een klasse voorkomt dat er afgeleide klassen van worden gemaakt.<?php final class BaseClass { // ... } // class DerivedClass extends BaseClass {} // Fatale fout: De klasse DerivedClass kan niet erven van de finale klasse BaseClass -
Finaliseren van een methode: Het toepassen van
finalop een methode binnen een klasse voorkomt dat deze wordt overschreven in afgeleide klassen.<?php class ParentClass { final public function cannotBeOverridden() { // ... } public function canBeOverridden() { // ... } } class ChildClass extends ParentClass { // public function cannotBeOverridden() {} // Fatale fout: Kan de finale methode ParentClass::cannotBeOverridden() niet overschrijven public function canBeOverridden() { // Overschrijven is toegestaan } }
final kan niet worden toegepast op klasse-eigenschappen.