多重继承是面向对象编程语言的属性,其中子类可以继承多个父类或超级类的属性。那么如何在PHP中实现多重继承?下面本篇文章就来给大家介绍一下使用接口实现多重继承的方法,希望对大家有所帮助。

PHP是不支持多重继承的,一次只继承一个类。但是,我们可以通过在PHP中使用接口( Interface)或Trait特性来实现多重继承。

下面我们就来介绍一下如何在PHP中使用接口( Interface)实现多重继承的。【视频教程推荐:PHP教程】

在PHP中,接口块声明了要用类定义的函数集以实现此接口。一个类可以扩展多个接口,因此,我们可以在PHP中模拟多个继承。

1、使用类和接口实现多重继承

语法:class child_class_name extends parent_class_name implements interface_name1, ...

示例:<?php

header("content-type:text/html;charset=utf-8");

class A {

public function insideA() {

echo "我在类A中";

}

}

interface B {

public function insideB();

}

class Multiple extends A implements B {

function insideB() {

echo "
我在接口中";

}

public function insidemultiple() {

echo "
我在继承类中";

}

}

$phpzww = new multiple();

$phpzww->insideA();

$phpzww->insideB();

$phpzww->insidemultiple();

?>

输出:

代码说明:接口“B”与类“A”一起使用以实现多重继承。要记住的重点是,它不能在界面内定义函数,它应该在子类“Multiple”中定义。我们使用名为“phpzww”的子类(Multiple)对象调用所有函数。

2、使用多个接口实现多重继承

语法:class child_class_name implements interface_name1, interface_name2, ...

示例:<?php

header("content-type:text/html;charset=utf-8");

interface C {

public function insideC();

}

interface B {

public function insideB();

}

class Multiple implements B, C {

// 接口B的功能

function insideB() {

echo "
我在接口B中";

}

// 接口C的功能

function insideC() {

echo "
我在接口C中";

}

public function insidemultiple()

{

echo "
我在接口类中";

}

}

$phpzww = new multiple();

$phpzww->insideC();

$phpzww->insideB();

$phpzww->insidemultiple();

?>

输出:

代码说明:在上面的代码示例中,有两个名为“B”和“C”的接口,它们扮演基类的角色,并且有一个名为“Multiple”的子类,我们使用名为“phpzww”的对象来调用所有函数。

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注Gxl网相关教程栏目!!!

相关文章推荐:

PHP如何使用Trait特性实现多重继承?(代码示例)

php中多重继承,PHP如何使用接口实现多重继承?(代码示例)相关推荐

  1. 【设计模式】软件设计七大原则 ( 接口隔离原则 | 代码示例 )

    文章目录 一.接口隔离原则简介 二.接口隔离原则代码示例 ( 反面示例 ) 1.接口定义 ( 接口臃肿 ) 2.实现类 1 3.实现类 2 三.接口隔离原则代码示例 ( 推荐用法 ) 1.接口 1 2 ...

  2. python对excel数据更改_利用python对excel中一列的时间数据更改格式代码示例

    本篇文章小编给大家分享一下利用python对excel中一列的时间数据更改格式代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 问题场景:需要将 ...

  3. python中formatter的用法_Python pyplot.FuncFormatter方法代码示例

    本文整理汇总了Python中matplotlib.pyplot.FuncFormatter方法的典型用法代码示例.如果您正苦于以下问题:Python pyplot.FuncFormatter方法的具体 ...

  4. python中font的用法_Python font.nametofont方法代码示例

    本文整理汇总了Python中tkinter.font.nametofont方法的典型用法代码示例.如果您正苦于以下问题:Python font.nametofont方法的具体用法?Python fon ...

  5. php 字体倾斜,CSS中font-style定义字体倾斜体样式的代码示例

    本篇文章给大家带来的内容是关于CSS中font-style定义字体倾斜体样式的代码示例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 一.常用斜体语法 常用字体样式设置font-st ...

  6. mysql中拼接用什么_MySQL中常用的拼接语句的小结(代码示例)

    本篇文章给大家带来的内容是关于MySQL中常用的拼接语句的小结(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 前言:在MySQL中 CONCAT ()函数用于将多个字符串 ...

  7. 【Groovy】集合遍历 ( 调用集合的 any 函数判定集合中是否有指定匹配规则的元素 | 代码示例 )

    文章目录 一.集合的 any 函数 二.集合的 any 函数代码示例 一.集合的 any 函数 集合的 any 函数 , 用于判断集合中是否有 满足闭包中的条件 的元素 , 返回一个布尔值 , tru ...

  8. python函数返回值可以有多个吗_Python函数中如何返回多个值?(代码示例)

    在Python中,我们可以通过多种方法,从一个函数中返回多个值.下面本篇文章就来给大家介绍一下从一个函数中返回多个值的方法,希望对大家有所帮助. 方法一:使用Object 这类似于C / C ++和J ...

  9. python中stringvar的用法_Python tkinter.StringVar方法代码示例

    本文整理汇总了Python中tkinter.StringVar方法的典型用法代码示例.如果您正苦于以下问题:Python tkinter.StringVar方法的具体用法?Python tkinter ...

  10. php 短信接口验证码,PHP代码示例_PHP验证码短信接口 | 微米-中国领先的短信彩信接口平台服务商...

    PHP短信接口二代码示例 请求 $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://api.weimi.cc/2/sms/sen ...

最新文章

  1. 使用 CAS 在 Tomcat 中实现单点登录
  2. openssl常用用法
  3. 我也来晒Flex编写的工作流编辑器
  4. c 语言如何处理表格文件中的数据库,C#程序从Excel表格中读取数据并进行处理
  5. React + TypeScript:元素引用的传递
  6. 【转】 ubuntu adduser 命令学习
  7. 前端学习(2947):node.js使用
  8. 安装VS2010时出现进入的图标没有与需要部分升级VS10Sp1-KB983509的解决方案
  9. hadoop和hdfs命令_Hadoop 1.x和2.x HDFS基本开发人员命令,“ hadoop”命令
  10. jedis默认切片实现及对应python版本实现
  11. python求15 17 23 65 97的因数_Python学习记录15
  12. 域、域树、域林、根域
  13. css div背景图大小,divcss如何改变背景图片大小
  14. 小谈企业进销存财务系统的应用
  15. MT4电脑版软件有哪些特征?相比MT5软件有什么不同?
  16. 群体Polymorphism information content(PIC)、 Nei diversity index (Nei s) 和 Shannon index (I)计算方法
  17. Vue组件通信(父传子、子传父、兄弟通信)
  18. android指南针程序,如何在Android上制作精确的指南针
  19. 何谓SRIO——RapidIO之旅从这里开始
  20. 解决su – 后显示-bash-4.1#

热门文章

  1. 写出线程同步相关的方法,以银行账号存储款为例
  2. 洛谷 P1129 BZOJ 1059 cogs 660 [ZJOI2007]矩阵游戏
  3. fastdfs-zyc监控系统的使用
  4. 淘宝api 处理对象和数组用到的自定义函数 以及 开发能用到的方法
  5. 开机时提示F1continue, F2 setup
  6. SQLite.Net操作类
  7. vuex单一状态树_Vuex中的State
  8. linux查看挂载内存卡,Ubuntu Linux 挂载移动硬盘、U盘、SD卡(对于新手)
  9. ARM开发7.3.2 基础实训( 2 ) 单个按键的输入系统设计( 2)--LPC21XX
  10. android file hascode,AndroidStudio集成Lombok