PHP面向对象之多重继承与接口用法

2019年9月11日00:53:26 评论 22

介绍接口之前,我们要知道,为什么要使用接口,这里向大家介绍一下。

那为什么要使用接口呢?

计算机语言中,只有少数的面向对象支持多重继承,我们所学习的PHP语言和大多数语言一样,并不支持多重继承。说白了就是一个父类可以有多个子类,但是子类只能有一个父类。

什么又是多重继承呢?

多重继承就是一个子类,继承了两个或多个父类,就是多重继承,在PHP中是不被允许的。如果要在PHP中实现多重继承功能,那么,我们就要用到接口。接口可以看成是解决多重继承的方法,PHP的面向对象的接口和其他面向对象语言接口类似。

接口类的语法介绍:

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

interface InterfaceName{
function interfaceName1(){
}
function interfaceName2(){
}
}

注意:

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

子类的语法介绍:

子类是通过inplements关键字来实现接口的,如果要实现多个接口,那么每个接口之间应该使用逗号隔开。且接口类中所有未实现的方法需要在子类中全部实现,否则会出现致命错误。

子类定义格式:

class SubClass implements InterfaceName1, InterfaceName2{
function InterfaceName1(){
}
function InterfaceName2(){
}
}

关于接口类实例:

<?php
header("content-type:text/html;charset=utf-8");
interface A{                                //创建接口
function a();
}
interface B{
function b();
}
class Php implements A{
function a()
{
echo 'php教程网';
}
}
class Html implements A , B{
function a()
{
echo 'PHP中文网是免费网站';
}
function b()
{
echo 'PHP中文网网址是www.php.cn';
}
}
$php = new Php();
$html = new html();
$php ->a();
echo '<br/>';
$html ->a();
$html ->b();

接口类中所有未实现的方法需要在子类中全部实现,否则会出现致命错误。大家可以亲自尝试一下部分实现接口中的类,看看会不会出现致命错误。

以上就是PHP面向对象之多重继承与接口用法的详细内容,更多请关注php教程网其它相关文章!

weinxin
欢迎加入中国站长博客之家
本站的所有资源都会上传分享到博客之家,希望大家互相学习交流进步。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: