博客列表 >Trait 的特点和复用

Trait 的特点和复用

有什么是忘不了的的博客
有什么是忘不了的的博客原创
2019年12月18日 19:10:37783浏览

Trait 是用来完成代码复用的,他突破了PHP只能单继承的局限,它具有类的大部分特点,唯独不可以被实例化(new)

use 可以在一个类中引入Trait

Trait 在使用时的优先级 子类 > Trait > 父类

如何在一个类中引入多个Trait,而且Trait中的方法命名冲突时,可以使用 insteadof  来设置谁生效。也可以给另一个起别名 as 。


Trait Demo1{
    publick function hello1(){
        return __METHOD__;
    }
}
Trait Demo2{
    publick function hello1(){
        return __METHOD__;
    }
}
class Demo{
    use Demo1,Demo2{
        Demo1::hello1 insteadof Demo2;
        Demo2::hello1 as Demo2Hello1;
    };
    publick function hello(){
        return __METHOD__;
    }
}
$a = new Demo()
$a -> hello()



声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议