Middle
PHP'de final anahtar kelimesinin kullanımını ne engeller?
sobes.tech yapay zeka
AI'dan gelen yanıt
PHP bağlamında final anahtar kelimesi, kalıtımı ve üzerine yazmayı engellemek için kullanılır:
-
Sınıfın sonlandırılması:
final'ın bir sınıfa uygulanması, ondan türeyen alt sınıfların oluşturulmasını engeller.<?php final class BaseClass { // ... } // class DerivedClass extends BaseClass {} // Ölümcül hata: DerivedClass sınıfı final olan BaseClass'tan kalıtım yapamaz -
Yöntemin sonlandırılması: Bir sınıf içindeki
final'ın uygulanması, bu yöntemin alt sınıflarda üzerine yazılmasını engeller.<?php class ParentClass { final public function cannotBeOverridden() { // ... } public function canBeOverridden() { // ... } } class ChildClass extends ParentClass { // public function cannotBeOverridden() {} // Ölümcül hata: Final yöntem ParentClass::cannotBeOverridden() üzerine yazılamaz public function canBeOverridden() { // Üzerine yazma izinlidir } }
final sınıf özelliklerine uygulanamaz.