final的中文含义是最终的,最后的。被关键字final修饰过的类和方法就是"最终的类和方法"。也就是说,final关键字修饰的类不能被继承,用final关键字修饰的方法不能被重写。
如果有一个类的格式为:
final class MyClass{
//......
}
则说明其他类不能再使用extends关键字继承该类。
如果有一个方法使用final关键字修饰,如下所示:
final function method_name()
说明该方法在所在类的子类中不可以被重写。
例如:
为final类MyClass生成一个子类ChildClass,可以看到程序报错,无法执行,代码如下:
<?php
final class MyClass
{
function __construct()
{
echo "111111";
}
}
class ChildClass extends MyClass
{
static function test()
{
echo "22222";
}
}
$child = new ChildClass();
结果为:
Fatal error: Class ChildClass may not inherit from final class (MyClass) in D:\wampserver\www\test\test\index1.php on
line 17
final关键字
原文:http://blog.csdn.net/qq_28602957/article/details/51314375