Middle
Mit tilt a final kulcsszó használata a PHP-ben?
sobes.tech MI
Válasz az MI-től
A final kulcsszó a PHP kontextusában a öröklés és felülírás megakadályozására szolgál:
-
Osztály véglegesítése: A
finalalkalmazása egy osztályra megakadályozza, hogy leszármazott osztályokat hozzanak létre belőle.<?php final class BaseClass { // ... } // class DerivedClass extends BaseClass {} // Halálos hiba: A DerivedClass nem örökölhet a végleges BaseClass-ból -
Metódus véglegesítése: Egy osztályon belüli
finalalkalmazása megakadályozza, hogy ez a metódus felülírásra kerüljön leszármazott osztályokban.<?php class ParentClass { final public function cannotBeOverridden() { // ... } public function canBeOverridden() { // ... } } class ChildClass extends ParentClass { // public function cannotBeOverridden() {} // Halálos hiba: Nem lehet felülírni a végleges ParentClass::cannotBeOverridden() metódust public function canBeOverridden() { // Felülírás engedélyezett } }
A final nem alkalmazható osztály tulajdonságokra.