查询

ReflectionClass::isFinal()函数—用法及示例

「 判断一个类是否被声明为 final(不能被继承) 」


函数名称:ReflectionClass::isFinal()

适用版本:PHP 5 >= 5.0.0, PHP 7

函数说明:ReflectionClass::isFinal() 方法用于判断一个类是否被声明为 final(不能被继承)。

用法示例:

class MyClass {
    final public function myMethod() {
        // 这个方法不能被子类重写
    }
}

$reflection = new ReflectionClass('MyClass');
$method = $reflection->getMethod('myMethod');

if ($method->isFinal()) {
    echo "myMethod是一个final方法";
} else {
    echo "myMethod不是一个final方法";
}

在上面的示例中,我们创建了一个名为MyClass的类,并在其中声明了一个myMethod方法,并将其标记为final。然后,我们使用ReflectionClass类创建一个MyClass的反射实例,并使用getMethod方法获取myMethod方法的反射对象。最后,我们使用isFinal方法来判断该方法是否被声明为final,并输出相应的结果。

注意:ReflectionClass::isFinal()方法只能用于类方法,不能用于类属性或全局函数。

补充纠错
热门PHP函数
分享链接