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方式 相对优雅的实现代码的复用


你要保守你心,胜过保守一切。

作者:​​刘俊涛的博客​​​