trait代码复用
程序员文章站
2022-04-04 09:21:18
在面对对象编程中我们经常通过继承来解决部分代码多次出现的问题 php支持单继承,有时候由于不相关联的两个类的方法相同我们需要进行继承操作, trait可以实现不继承的情况下复用代码 trait的使用类似于类 trait 类名 { public function 方法名(){ .......... } ......
在面对对象编程中我们经常通过继承来解决部分代码多次出现的问题
php支持单继承,有时候由于不相关联的两个类的方法相同我们需要进行继承操作,
trait可以实现不继承的情况下复用代码
trait的使用类似于类
trait 类名 {
public function 方法名(){
..........
}
}
要使用trait定义的方法很简单,通过在类中使用use trait定义的类名 ,即可使用trait定义的方法
同时如果要使用多个trait定义的方法可以使用‘,’隔开,但是使用多个trait的话不能出现两个相同的方法名
如果出现可以使用
use Gps,GpsChina{
GpsChina::gps insteadof Gps;//使用中国版的gps来代替Gps里的gps
}
同时最重要的一点是 类定义的同名方法 覆盖 trait定义的同名方法 覆盖 extends继承的同名方法