函数名称: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()
方法只能用于类方法,不能用于类属性或全局函数。