Middle
Co zabrania używania słowa kluczowego final w PHP?
sobes.tech AI
Odpowiedź od AI
Słowo kluczowe final w kontekście PHP jest używane do zapobiegania dziedziczeniu i nadpisywaniu:
-
Finalizacja klasy: Zastosowanie
finaldo klasy uniemożliwia tworzenie klas pochodnych dziedziczących z niej.<?php final class BaseClass { // ... } // class DerivedClass extends BaseClass {} // Błąd krytyczny: Klasa DerivedClass nie może dziedziczyć z finalnej klasy BaseClass -
Finalizacja metody: Zastosowanie
finaldo metody w klasie uniemożliwia jej nadpisanie w klasach pochodnych.<?php class ParentClass { final public function cannotBeOverridden() { // ... } public function canBeOverridden() { // ... } } class ChildClass extends ParentClass { // public function cannotBeOverridden() {} // Błąd krytyczny: Nie można nadpisać finalnej metody ParentClass::cannotBeOverridden() public function canBeOverridden() { // Nadpisanie jest dozwolone } }
final nie można stosować do właściwości klasy.