【知识】PHP接口的使用方法

2016-08-29 890 3 编辑:Monster 来源:程序书籍

继承特性简化了对象、类的创建,增加了代码的可重性。但PHP只支持单继承。如果想实现多重继承,就哟啊使用接口。PHP可以实现多个接口。

接口类通过interface关键字来声明,并且类中只能包含为实现的方法和一些成员变量,格式如下:

interface InterfacName{

function interfaceName1();

function interfaceName2();

...

}

不要用public以外的关键字来修饰接口中的类成员,对于方法,不写关键字也可以。这是由接口自身的属性决定的。

子类是通过implements关键字来实现接口的,如果要实现多个接口,那么每个接口之间应使用逗号“,”隔开。而且接口类中所有为实现的方法需要在子类中全部实现,否则PHP将会出现错误。格式如下:

class SubClass implements InterfaceName1,InterfaceName2{

fubction interfaceName1(){

//功能实现

}

fubction interfaceName2(){

//功能实现

}

...

}

本例首先声明了两个接口Mpopedom和MPurview,接着声明了两个类Member和Manager,其中Member类继承了MPopedom接口;Manager继承了MPopedom和MPurview接口。分别实现各自的成员方法后,实例化两个对象$member$manager。最后调用实现后的方法。实例代码如下:

<?php 

/*  声明接口 MPopedom  */

interface MPopedom{

function popedom();

}

/*  声明接口 MPurview  */

interface MPurview{

function purview();

}

/*  创建子类 Member,实现一个接口 MPurview  */

interface Member implements MPurview{

function purview(){

echo'会员拥有的权限';

};

}

/*  创建子类 Manager,实现多个接口 MPurview 和 MPopedom  */

interface Member implements MPurview,MPopedom{

function purview(){

echo'管理员拥有会员的全部权限';

};

function popedom(){

echo'管理员还有会员没有的权限';

};

}

$member=news Member();//类Member实例化

$manager=new Manager();//类Manager实例化

$member->purview();//调用$member对象的purview方法

echo'<p>';

$manager->purview();//调用$manager对象的purview方法

$manager->popedom();//调用$manager对象的popedom方法

?>

本站文章均为深正网站建设摘自权威资料,书籍,或网络原创文章,如有版权纠纷或者违规问题,请即刻联系我们删除,我们欢迎您分享,引用和转载,我们谢绝直接复制和抄袭!感谢...
关注深正互联