Trait使用的注意事项
PHP中的Trait 特性及作用
- Trait 会覆盖调用类继承的父类方法
- Trait 无法如 Class 一样使用 new 实例化
- 单个 Trait 可由多个 Trait 组成
- 在单个 Class 中,可以使用多个 Trait
- Trait 支持修饰词(modifiers),例如 final、static、abstract
- 我们能使用 insteadof 以及 as 操作符解决 Trait 之间的冲突
- 优先级:当前类中的方法 > trait中的方法 > 基类中的方法
优点
解决代码复用,解决PHP单继承的问题;
区别
trait和class的区别是trait不能被实例化
Trait方式 相对优雅的实现代码的复用
你要保守你心,胜过保守一切。
作者:刘俊涛的博客