Trait的使用

在PHP中代码只能单继承,为了实现类代码的复用因此实现了trait,trait类与普通class不同它自身无法实例化,只能通过use在class中引用trait,然后这个类就能使用trait中的方法。

trait的基本使用
使用中遇到的一些问题
你想自定义自己类中方法的权限而不是使用原来trait的方法权限

使用as来修改权限

类中的方法发生冲突

类中的方法有优先级: 本类中的方法 > trait的方法 > 继承的类中的方法

  • 如果同名的话优先级高的会覆盖优先级低的,因此如果需要使用需要修改方法的名称
    同样使用as,但如果也想修改权限则权限放在要修改的名称前面
权限和方法名修改
  • 两个类中的方法名相同,使用其中一个不使用另外一个
    使用B中的smallTalk方法替换A中的smallTalk方法, 使用A的bigTalk替换B中的bigTalk
方法替换

多使用Trait来实现代码复用, 能实现更为完善的面向对象的代码。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 177,517评论 25 709
  • Scala与Java的关系 Scala与Java的关系是非常紧密的!! 因为Scala是基于Java虚拟机,也就是...
    灯火gg阅读 3,593评论 1 24
  • 第七十七章 哪吒 原玥和顾维琼在放飞自我的道路上不断前行,看见一家排队才能买到的烤鸡店面前驻足不前了。 “你说,...
    chief风阅读 448评论 0 0
  • 从来不觉得爱情 有什么艰难 那是因为 有个善解人意的好姑娘陪在身旁 我要化成一股风 留住你深情的雨 与你缠绵厮守 ...
    秦淮乔畔阅读 279评论 0 2

友情链接更多精彩内容