PHP 面向对象 final类与final方法

Fatal error: Class SuperMath may not inherit from final class (Math) in E:PHPProjects est.php on line 14

  1. <?php
  2. //声明一个final类Math
  3. class Math{
  4. public static $pi = 3.14;
  5. public function __toString(){
  6. return "这是Math类。";
  7. }
  8. public final function max($a,$b){
  9. return $a > $b ? $a : $b ;
  10. }
  11. }
  12. //声明类SuperMath 继承自 Math类
  13. class SuperMath extends Math {
  14. public final function max($a,$b){}
  15. }
  16. //执行会出错,final方法不能被重写。
  17. ?>
  18. <?php
  19. //声明一个final类Math
  20. final class Math{
  21. public static $pi = 3.14;
  22. public function __toString(){
  23. return "这是Math类。";
  24. }
  25. }
  26. $math = new Math();
  27. echo $math;
  28. //声明类SuperMath 继承自 Math类
  29. class SuperMath extends Math {
  30. } //开源代码phpfensi.com
  31. //执行会出错,final类不能被继承。
  32. ?>

Fatal error: Class SuperMath may not inherit from final class (Math) in E:PHPProjects est.php on line 16