final的中文意思是“最後的,最終的”,可以修飾類或者方法。
1)不希望父類的某個方法被子類重載(override)時,可以用final關鍵字修飾
2)不希望類被繼承時,可以用final修飾
格式:
final class 類名{
}
class 類名{
final 修飾符 function 函數名(參數列表){}
}
例:
<?php
final class A{
}
class B extends A{ //將會報錯
}
echo "ok";
?>
<?php
class A{
final public function getRate($salary){
return $salary*0.08;
}
}
class B extends A{
public function getRate($salary){
return $salary*0.01;
}
}
$b=new B();
echo $b->getRate(2000); //運行時會報錯,因為父類A中的getRate()使用final修飾,無法在子類中重寫
?>
例:
<?php
class A{
final public function getRate($salary){
return $salary*0.08;
}
}
class B extends A{
/*public function getRate($salary){
return $salary*0.01;
}*/
}
$b=new B();
echo $b->getRate(2000); //輸出 160
?>
URL: http://www.bianceng.cn/webkf/PHP/201612/50493.htm