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

巴扎黑
Lepaskan: 2023-03-07 12:42:01
asal
3224 orang telah melayarinya

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

那为什么要使用接口呢?

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

什么又是多重继承呢?

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

接口类的语法介绍:

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

interface InterfaceName{
function interfaceName1(){
}
function interfaceName2(){
}
}
Salin selepas log masuk

注意:

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

子类的语法介绍:

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

子类定义格式:

class SubClass implements InterfaceName1, InterfaceName2{
function InterfaceName1(){
}
function InterfaceName2(){
}
}
Salin selepas log masuk

关于接口类实例:

<?php
header("content-type:text/html;charset=utf-8");
interface A{                                //创建接口
function a();
}
interface B{
function b();
}
class Php implements A{
function a()
{
echo &#39;php中文网&#39;;
}
}
class Html implements A , B{
function a()
{
echo &#39;PHP中文网是免费网站&#39;;
}
function b()
{
echo &#39;PHP中文网网址是m.sbmmt.com&#39;;
}
}
$php = new Php();
$html = new html();
$php ->a();
echo &#39;<br/>&#39;;
$html ->a();
$html ->b();
Salin selepas log masuk

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

Atas ialah kandungan terperinci PHP面向对象之多重继承与接口用法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan