PHP8中final关键字的应用-PHP8知识详解
导读:在PHP8中,final的中文含义是最终的、最后的意思。被final修饰过的类和方法就是“最终的版本”。 如果关键字final放在类的前面,则表示该类不能被集成。 如果关键字final放在方法的前面,则表示该 方法不能被重新定义。
在php8中,final的中文含义是最终的、最后的意思。被final修饰过的类和方法就是“最终的版本”。
如果关键字final放在方法的前面,则表示该 方法不能被重新定义。
如果有一个类的格式为:
final class class_name{
// ……
}
则说明该类不可以被再继承,也不能再有子类。
如果有一个方法的格式为:
final function method_name()
则说明该方法在子类中不可以重写,也不可以被覆盖。
使用final关键字的参考代码:
<?php
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://www.phpfw.com/php8final.html
码字不易,打个赏呗
杨泽业感谢你的支持!
站长在线站长一对一网络指导服务,一元一分钟,50元一个小时
阿里云虚拟主机1G空间,120元一年
香港、美国虚拟主机100元一年,1000元永久
腾讯云双十一0.4折起,2核8G5M三年仅700元,2核4G8M三年仅198元
阿里云虚拟主机1G空间,120元一年
香港、美国虚拟主机100元一年,1000元永久
腾讯云双十一0.4折起,2核8G5M三年仅700元,2核4G8M三年仅198元
猜你喜欢