PHP实现多继承的效果(tarits)

多继承里一个类可以同时继承多个父类,组合多个父类的功能 C++ 里就是使用这种模型来增强集成的灵活性的,但多重继承过于灵活,并且会带来“菱形继承”,故使用起来有不少困难,模型变的复杂起来,现在大多数语言都放弃了多重继承这一模型。 
但有的场合想用多继承,但PHP又没多继承,于是就发明了这样的一个东西。 
Traits可以理解为一组能被不同的类都能调用到的方法集合,但Traits不是类!不能被实例化。先来例子看下语法:

<?php
trait myTrait{
    function traitMethod1(){}
    function traitMethod2(){}

}

//然后是调用这个traits,语法为:
class myClass{
    use myTrait;
}

//这样就可以通过use myTraits,调用Traits中的方法了,比如:
$obj = new myClass();
$obj-> traitMethod1 ();
$obj-> traitMethod2 (); 
>
posted @ 2018-09-14 10:38  木楊  阅读(160)  评论(0编辑  收藏  举报