http://www.housemms.com

                                                                  【703彩票】PHP是单继承还是多继承-PHP问题

                                                                  PHP是不支持多继承的,那么如何实现多继承呢?

                                                                  可以使用interface或trait 实现

                                                                  interface这里我们就不做过多的说明了,它的原理就是一个类可以实现多个接口。下面这段代码就能够说明。

                                                                  interface] test1{    public function connect();}interface test2{    public function contact();}// 类可以同时实现多个接口class myCode implements test1,test2{    public function connect(){    echo "test1!";    }    public function contact(){    echo "test2!":    }}

                                                                  下面我们重点讨论一下trait实现多继承(其实也不叫多继承,应该叫类似多继承的功能)
                                                                  那什么是trait呢?
                                                                  答:看上去既像类又像接口,其实都不是,Trait可以看做类的部分实现,可以混入一个或多个现有的PHP类中,其作用有两个:表明类可以做什么;提供模块化实现。Trait是一种代码复用技术,为PHP的单继承限制提供了一套灵活的代码复用机制。
                                                                  那么怎么实现trait呢?看下面代码:

                                                                  //基本类  class basicTe(st{    public function test(){      echo "hello,world\n";    }  }  //traitOne  trait traitOne{    public function test(){      echo "this is trait one";    }    public function testOne(){      echo "one<br />";    }  }  //traitTwo  trait traitTwo{    // public function test(){      // echo "this is trait two!";    // }    publi)c function testTwo(){      echo "Two<br />";    }   }  //继承基本类,并use trait  class myCode extends basicTest{    use traitOne,traitTwo;    public functi,on test(){      echo "hehaha!!<br />";    }  }  $obj = new myCode();  $obj->testTwo();

                                                                  注意:

                                                                  优先级:自身方法>trait的[方法>继承的方法(就是这样子的。)
                                                                  如果我们打开上述代码中的注释,会报错,因为两个trait中的方法重名了。

                                                                  推荐教程:PHP视频教程

                                                                  以上就是PHP是单继承还是多继承的详细内容,更多请关注php中文网其它相关文章!

                                                                1. 微信
                                                                2. 分享php中文网最新课程二维码相关标签:php 单继承 多继承
                                                                3. 本文原创发布php中文网
                                                                4. 郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

                                                                  上一篇:php多线程和多进程的作用-PHP问题
                                                                  下一篇:没有了