首页 > 编程笔记 > PHP笔记 阅读:11

PHP final关键字的用法(附带实例)

在 PHP 程序中,面向对象中的继承使类和类成员变得非常灵活,但有时不希望类和类成员在使用的过程中变化,可以在这些内容前面添加 final 关键字,表示这些内容不能被修改。

使用 final 关键字修饰类和类成员的基本语法格式如下:
final class 类名                       // 最终类
{
    final public const 常量名 = 常量值;      // 最终常量
    final public function 方法名(){}    // 最终方法
}
在上述语法格式中:
下面演示 final 关键字的使用,具体代码如下:
class Person
{
    final public const AGE = 18;   // 最终常量
    final public function show()   // 最终方法
    {
    }
}
class Student extends Person
{
    public const AGE = 20;   // 报错
    public function show()   // 报错
    {
    }
}
在上述代码中:
运行程序后会报错,第 10 行代码的错误信息是:
Fatal error: Student::AGE cannot override final constant Person::AGE in…
表示不能重写 Person 类的最终常量。

第 11 行代码的错误信息是
Fatal error: Cannot override final method Person::show() in…
表示不能重写 Person 类的最终方法。

如果给上述第 1 行代码添加 final 关键字,表示 Person 类是最终类,运行程序后,会提示 Student 类不能继承 Person 最终类的错误信息。

相关文章