Final
KeywordIf a class is being defined final then it cannot be extended.
If a method is being defined final then it cannot be overrided by child classes.
Only classes and methods may be declared as final.
Properties and constants cannot be declared final.
<?php final class ParentClass { } class ChildClass extends ParentClass { } ?>
Fatal error: Class ChildClass may not inherit from final class (ParentClass)
<?php class ParentClass { public function test() { } final public function moreTesting() { } } class ChildClass extends ParentClass { // Fatal Error: Overriding final methods public function moreTesting() { } } ?>
Fatal error: Cannot override final method ParentClass::moreTesting()