Heim >Backend-Entwicklung >PHP-Tutorial >Ausführliche Erläuterung von Anwendungsbeispielen für finale Klassen und finale Methoden in PHP objektorientiert
Wenn wir nicht möchten, dass eine Klasse vererbt wird, verwenden wir final, um die Klasse zu ändern. Diese Klasse wird nicht vererbt.
final---wird vor Klassen und Methoden verwendet.
Abschlussklasse---kann nicht vererbt werden.
Endgültige Methode – kann nicht überschrieben werden.
Abschlussklassen können nicht vererbt werden.
Wenn wir nicht möchten, dass eine Klasse vererbt wird, verwenden wir final, um die Klasse zu ändern. Diese Klasse wird nicht vererbt. Die von uns festgelegte Mathematikklasse umfasst beispielsweise die mathematischen Berechnungsmethoden, die wir ausführen möchten. Diese Algorithmen müssen nicht geändert oder vererbt werden.
<?php //声明一个final类Math final class Math{ public static $pi = 3.14; public function toString(){ return "这是Math类。"; } } $math = new Math(); echo $math; //声明类SuperMath 继承自 Math类 class SuperMath extends Math { } //执行会出错,final类不能被继承。 ?>
Ergebnisse der Programmausführung
Fatal error: Class SuperMath may not inherit from final class (Math) in E:\PHPProjects\test.php on line 14
Die letzte Methode kann nicht überschrieben werden
Wenn Sie nicht möchten es in der Klasse Eine bestimmte Methode wird von einer Unterklasse überschrieben. Wir können diese Methode als endgültige Methode festlegen, indem wir den endgültigen Modifikator vor dieser Methode hinzufügen.
Wenn diese Methode von einer Unterklasse überschrieben wird, tritt ein Fehler auf.
<? //声明一个final类Math class Math{ public static $pi = 3.14; public function toString(){ return "这是Math类。"; } public final function max($a,$b){ return $a > $b ? $a : $b ; } } //声明类SuperMath 继承自 Math类 class SuperMath extends Math { public final function max($a,$b){} } //执行会出错,final方法不能被重写。 ?>
Ergebnis der Programmausführung
Fatal error: Class SuperMath may not inherit from final class (Math) in E:\PHPProjects\test.php on line 16
Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung von Anwendungsbeispielen für finale Klassen und finale Methoden in PHP objektorientiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!