Middle
Mis takistab PHP-s võtmesõna final kasutamist?
sobes.tech AI
Vastus AI-lt
Võtmesõna final PHP kontekstis kasutatakse pärimise ja ülekirjutamise vältimiseks:
-
Klassi lõplikuks muutmine:
finalrakendamine klassile takistab sellest pärilike klasside loomist.<?php final class BaseClass { // ... } // class DerivedClass extends BaseClass {} // Surmav viga: DerivedClass klass ei saa pärida final klassilt BaseClass -
Meetodi lõplikuks muutmine:
finalrakendamine klassi sees takistab selle meetodi ülekirjutamist pärilikes klassides.<?php class ParentClass { final public function cannotBeOverridden() { // ... } public function canBeOverridden() { // ... } } class ChildClass extends ParentClass { // public function cannotBeOverridden() {} // Surmav viga: Ei saa ülekirjutada final meetodit ParentClass::cannotBeOverridden() public function canBeOverridden() { // Ülekirjutamine on lubatud } }
final ei saa rakendada klassi omadustele.