PHP5 ile birlikte hayatımıza giren kavramlardan bir taneside sınıf ve metodlar için getirilen final kavramı…
işin özü final diyerek o metod veya sınıfın bir daha türetilememesini sağlamış bulunuyoruz.
O sınıf türetilmesin bozulmasın vs. diye böyle bir yol izlenebilir, karışık ve zor değil o yüzden direk örnek vereceğim ve taşlar oturacak kafanızda;
Sınıflarda Final Kullanımı
final class FinalSinif {
public function abcMethod() {
echo "FinalSinif method u çağrıldı";
}
}
//Compile error verecektir çünkü final sınıfı türetilemez
class YeniSinif extends FinalSinif {
public function abcMethod() {
echo "YeniSinif method u çağrıldı";
}
}
$onur = new YeniSinif();
$onur->abcMethod();
Methodlarda Final Kullanımı
class kokSinif {
final public function abcFinalMethod() {
echo "kokSinif method istendi";
}
}
class altSinif extends kokSinif {
//Sonuç yine Compile error
public function abcFinalMethod() {
echo "altSinif method istendi";
}
}
$onur = new altSinif();
$onur->abcFinalMethod();
Umarım açıklayıcı olmuştur, iyi çalışmalar herkese..