热门IT资讯网

php接口中的interface如何使用

发表于:2024-11-24 作者:热门IT资讯网编辑
编辑最后更新 2024年11月24日,这篇"php接口中的interface如何使用"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看

这篇"php接口中的interface如何使用"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"php接口中的interface如何使用"文章吧。

1、说明

接口中的方法都是抽象方法,并且是public。

2、接口同样可以继承接口,但是子类必须实现所有方法

interface E extends A {    //接口E继承接口A,E中必须实现A中所定义的方法}

3、实现多重继承:

我们都知道PHP中的类(class)是单继承的,那是不是就没有办法实现多重继承了呢?答案是否定的.我们可以通过其它特殊的方式实现类的多重 继承,比如使用接口interface实现,只要把类的特征抽象为接口,并通过实现接口的方式让对象有多重身份,通过这样就可以模拟多重继承了。

下面是一个用接口(interface)实现多重继承的例子,源代码如下:

name;}}class Teacher implements TeacherInterface { //实现TeacherInterface接口private $lengthOfService = 5; // 工龄public function getLengthOfService(){return $this->lengthOfService;}}// 继承自User类,同时实现了TeacherInterface接口.class GraduateStudent extends User implements TeacherInterface {private $teacher ;public function __construct(){$this->teacher = new Teacher();}public function getLengthOfService(){return $this->teacher->getLengthOfService();}}class Act{//注意这里的类型提示改成了接口类型public static function getUserName(UserInterface $_user){echo "Name is " . $_user->getName() ."
";}//这里的类型提示改成了TeacherInterface类型.public static function getLengthOfService(TeacherInterface $_teacher){echo "Age is " .$_teacher->getLengthOfService() ."
";}}$graduateStudent = new GraduateStudent();Act::getUserName($graduateStudent);Act::getLengthOfService($graduateStudent);//结果正如我们所要的,实现了有多重身份的一个对象.?>

以上就是关于"php接口中的interface如何使用"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。

0