加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

PHP final关键字用法示例

发布时间:2020-05-30 22:05:42 所属栏目:PHP 来源:互联网
导读:PHP final关键字用法示例

对深入分析PHP final关键字使用技巧感兴趣的小伙伴,下面一起跟随脚本之家 jb51.cc的小编两巴掌来看看吧!

PHP程序员们在掌握了
在PHP中类的继承是使用最多的一个编程特性,我们可以创建一个基类(父类)然后在这其中定义一些基本的方法,在我们的子类我们可以扩展父类中的方法这就叫覆盖,但是如果说你在父类的某些很关键的方法你不能被子类继承,因为如果子类继承了这个方法可能给程序带来一定的麻烦,所以我们希望这个方法是“私有”的,是不能被扩展的,这在PHP使用了final关键字来修饰你要不被继承的方法。

PHP final关键字可以修饰类同样可以修改类中的方法,但它们的作用是差不多的,即如果你使用了final关键字来修饰了,那么这个被修饰的类或者方法将不能被扩展或者继承。你只能老老实实去引用它。如果你在类前面使用了final,这就是说明这个类不能使用继承;如果你在方法前使用了PHP final关键字,这就是说明这个方法不能被覆盖。道理就是这么简单,让我们也看个简单的示例吧。


/**
 * 深入分析PHP final关键字使用技巧
 *
 * @param 
 * @arrange 512-笔记网: www.512Pic.com
 **/
finalclassBaseClass{ 
publicfunctiontest(){ echo"BaseClass::test()calledn"; 
} finalpublicfunctionmoreTesting(){ 
echo"BaseClass::moreTesting()calledn"; } 
} classChildClassextendsBaseClass{ 
publicfunctionmoreTesting(){ echo"ChildClass::moreTesting()calledn"; 
} } 
//ResultsinFatalerror:CannotoverridefinalmethodBaseClass::moreTesting()

/***   来自脚本之家 jb51.cc(jb51.cc)   ***/

这个例子中,我们在类前和方法前都加了PHP final关键字来修饰我们具体的类,当然这个类是不能按要求来输出的,你可以自己动手调试下,基本的原理就这样了,我们只要记住如果类或者方法使用了final那么这就意味着类不能被继承或者子类不能覆盖父类的方法。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读