首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PHP8中final关键字的应用-PHP8知识详解

在php8中,final的中文含义是最终的、最后的意思。被final修饰过的类和方法就是“最终的版本”。

如果关键字final放在类的前面,则表示该类不能被继承。

如果关键字final放在方法的前面,则表示该 方法不能被重新定义。

如果有一个类的格式为:

final class class_name{

// ……

}

则说明该类不可以被再继承,也不能再有子类。

如果有一个方法的格式为:

final function method_name()

则说明该方法在子类中不可以重写,也不可以被覆盖。

使用final关键字的参考代码:

final class Fruit {                               //final类Fruit

  function __construct(){                       //定义构造方法

      echo "今日的特价水果是苹果。";

  }

}

class MyFruit extends Fruit {                   //定义Fruit类的子类

  function display()                          //定义子类的方法

  {

      echo "今日的特价水果是葡萄。";

  }

}

$fruit=new MyFruit ();                        //类的实例化

echo $fruit->display();                        //调用类的方法

?>

以上代码在PHP8中的运行结果为:

Fatal error: Class MyFruit may not inherit from final class (Fruit) in

D:\phpenv\www\localhost\index.php on line 12

说明类Fruit不能被继承,否则会出错。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OoGlomrLtWVdIQm-4oaexWVg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券