Final---クラスとメソッドの前に使用されます。
最終クラス---継承できません。
最終メソッド---オーバーライドできません。
最終クラスは継承できません。
クラスを継承したくない場合は、final を使用してクラスを変更します。このクラスは継承されません。たとえば、設定した Math クラスには、実行したい数学的計算メソッドが含まれており、これらのアルゴリズムを最終的な型に設定する必要はありません。
コードをコピーします コードは次のとおりです:
//final class Math を宣言します
final class Math{
public static $pi = 3.14;
public function __toString() {
return " これは Math クラスです。 ";
}
}
$math = new Math();
//宣言クラス SuperMath は Math クラスから継承します
class SuperMath extends Math {
}
//実行エラーのため、最終クラスを継承できません。
?>
プログラム実行結果
コードをコピー コードは次のとおりです:
致命的なエラー: クラス SuperMath は E:PHPProjectstest.php の最終クラス (Math) から継承できません。 14行目
finalメソッドはオーバーライドできません
クラス内のメソッドがサブクラスによってオーバーライドされたくない場合は、このメソッドをfinalメソッドとして設定し、このメソッドの前にfinal修飾子を追加するだけです。 このメソッドがサブクラスによってオーバーライドされると、エラーが発生します。
コードをコピーします コードは次のとおりです:
//最終クラス Math を宣言します
class Math{
public static $pi = 3.14;
public function __toString(){
return; "これは Math クラスです。 ";
public Final function max($a,$b){
return $a > ? $a : $b ;
//SuperMath が継承する宣言クラスMath クラス
class SuperMath extends Math {
public Final function max($a,$b){}
}
//実行中にエラーが発生し、final メソッドをオーバーライドできません。
?>
プログラムの実行結果
コードをコピーします
コードは次のとおりです: 致命的なエラー: クラス SuperMath は E:PHPProjectstest の最終クラス (Math) から継承できません。 PHPの16行目
http://www.bkjia.com/PHPjc/321642.html
www.bkjia.com
truehttp://www.bkjia.com/PHPjc/321642.html技術記事 Final---クラスとメソッドの前に使用されます。最終クラス---継承できません。最終メソッド---オーバーライドできません。最終クラスは継承できません。 クラスを継承したくない場合は、 fina を使用します...