php trait
Trait中的方法或属性会覆盖基类(如果有继承关系)中的同名的方法或属性,而本类会覆盖Trait中同名的方法,如果本类或基类和Trait有同名属性会冲突报错
基本定义
和class很像。Trait基本定义如下
1 | trait Dog{ |
基本使用
只要在类里use之后,就可以使用Trait里的方法
1 | class Cat extends Animal{ |
与当前类同名
trait很像继承,所以当当前类与trait类方法同名时候,当前类会覆盖trait方法
1 | trait B |
引入多个Trait
用逗号分隔,如果有重名的方法或熟悉使用as取别名 使用insteadof表示替代
1 | class dog{ |
参考文献
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Dev!