位置: 编程技术 - 正文

PHP中子类重载父类的方法【parent::方法名】(php方法重载)

编辑:rootadmin

推荐整理分享PHP中子类重载父类的方法【parent::方法名】(php方法重载),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php子类获取父类对象,php 子类重写父类protected有什么限制,子类重载父类方法,php 子类重写父类protected有什么限制,php 子类重写父类protected有什么限制,php中子类最多可以继承几个父类,php子类调用父类方法,php 子类重写父类protected有什么限制,内容如对您有帮助,希望把文章链接给更多的朋友!

在PHP中不能定义重名的函数,也包括不能再同一个类中定义重名的方法,所以也就没有方法重载。单在子类中可以定义和父类重名的方法,因为父类的方法已经在子类中存在,这样在子类中就可以把从父类中继承过来的方法重写。

子类中重载父类的方法就是在子类中覆盖从父类中继承过来的方法,父类中的方法被子类继承过来不就可以直接使用吗?为什么还要重载呢?因为有一些情况我们必须要覆盖的。例如,有一个“鸟”类,在这个类中定义了鸟的通用方法“飞翔”。将“鸵鸟”类作为它的子类,就会将“飞翔”的方法继承过来,但只要一调用“鸵鸟”类中的这个“飞翔”的方法,鸵鸟就会飞走。虽然鸵鸟是不会飞的,但其他特性都具有“鸟类”的特性,所以在声明“鸵鸟”类时还是可以继承“鸟”类的,但必须在“鸵鸟”类中将“鸟”类中继承过来的“飞翔”方法改写,就需要在子类中重载父类中的方法。

在下面的例子中,声明的Person类中有一个“说话”方法,Student类继承Person类后可以直接使用“说话”方法。但Person类中的“说话”方法只能说出它自己的成员属性,而Student类对Person类进行了扩展,多添加了几个新的成员属性。代码如下所示:

改程序运行后输出的结果为:

PHP中子类重载父类的方法【parent::方法名】(php方法重载)

我的名字叫:张三,性别:男,我的年龄是:,在edu学校上学

在PHP中,提供了在子类重载的方法中调用父类被覆盖方法的功能。这样就可以在子类重写的方法中,继续使用从父类继承过来并被覆盖的方法,然后再按要求多添加一些新功能。调用的格式是使用“parent:方法名”在子类的重载方法中调用父类中被覆盖的方法。将上例中的代码修改一下,在子类重写的构造方法中使用“parent::__construct()”调用父类中被覆盖的构造方法,再多添加一条对子类中新扩展的成员属性初始化的代码。在子类中重写的say()方法中使用“parent::say()”调用父类中被覆盖的say()方法,再添加上输出子类成员属性的功能。

代码如下所示:

上面的例子输出的结果和前一个例子是一样的,但在本例中通过在子类中直接调用父类中被覆盖的方法要简便很多。另外,在子类覆盖父类的方法时一定要注意,在子类中重写的方法访问权限一定不能低于父类被覆盖的方法的访问权限。例如,如果父类中的访问权限是protected,那么在子类中重写的方法的权限就要是protected或public。

以上内容是小编给大家介绍的PHP中子类重载父类的方法【parent::方法名】的相关内容,希望对大家有所帮助!如果大家想了解更多资讯,敬请关注积木网网站!

PHP动态地创建属性和方法, 对象的复制, 对象的比较,加载指定的文件,自动加载类文件,命名空间 PHP前言:动态地创建属性和方法对象的复制对象的比较加载指定的文件自动加载类文件命名空间示例1、类的相关知识点3(动态地创建属性和方法)class/

一波PHP中cURL库的常见用法代码示例 php的CURL是不错的功能,下面收藏几段不错的片段0、基本例子一般流程:$to_url=$_GET['url'];print_r($_GET);if(substr($to_url,0,1)=='/'){$to_url="

PHP检测链接是否存在的代码实例分享 在PHP中,检查某个链接是否存在,有两个方法,一个是使用curl,另外一个是获得HTTP的header的响应码,如果是的则是OK,如果是的话就找不到了,例子如下:1)使

标签: php方法重载

本文链接地址:https://www.jiuchutong.com/biancheng/293602.html 转载请保留说明!

上一篇:PHP+Jquery与ajax相结合实现下拉淡出瀑布流效果【无需插件】

下一篇:PHP动态地创建属性和方法, 对象的复制, 对象的比较,加载指定的文件,自动加载类文件,命名空间(php动态变量)

  • 海关对哪些物品有出入境的限制规定
  • 小规模纳税人税率1%政策到什么时候
  • 外贸出口退税流程视频
  • 印花税计提时应入什么科目
  • 企业所得税的计提
  • 带薪年休假如果当年离职补交的年休假钱需要扣个税嘛
  • 增值税票购买份数满了怎么办
  • 金税盘服务费不能全额抵扣吗
  • 下岗职工可以享受低保吗
  • 库存产品亏本销售账务处理
  • 委托贷款业务涉嫌诈骗吗
  • 新企业会计准则什么时候实施的
  • 公司没有缴纳住房公积金离职能要求补缴吗
  • 计提地税走哪个科目
  • 营改增劳务派遣
  • 免征增值税还要做销项税吗
  • 广告传媒公司的名字
  • 个人对公益事业的认识与看法
  • excel自动计算增值税
  • 以前年度损益调整怎么用
  • 财务内账外账的优缺点
  • 计划成本法下材料入库的会计分录
  • 财产转移数据缴费怎么交
  • 转出未交增值税借方余额表示什么
  • 在卖场当中常见的问题
  • 退货抵扣是什么意思
  • 委托代销商品会计分录按成本还是售价
  • 车子计提折旧年限
  • qt5core.dll丢失解决方法
  • linux系统之间拷贝文件命令
  • 购买财务软件申请怎么写
  • PHP:imagecolorat()的用法_GD库图像处理函数
  • 微信开发获取位置
  • web 前端
  • 命令who的含义
  • 往来款怎么做账
  • 银行手续费必须有发票才能入账吗
  • 专家咨询费比例不能超过多少
  • 基本运算符号有乘方吗
  • 公司境外汇款该怎么处理
  • 小规模企业跨月发票如何冲红
  • 计提坏账准备对企业的影响
  • sql2008r2如何使用
  • 企业所得税不能税前扣除项目
  • 一般纳税人附加税减半征收政策2023
  • 个人独资企业与有限公司的区别
  • 小规模纳税人代账费用
  • 实际利率法如何理解
  • 进项抵扣怎么操作
  • 建筑施工安全费用提取标准
  • 增值税期末留抵税额是什么意思
  • 信用卡产生滞纳金
  • 收到货款但未开票怎么入账
  • sql常用语句大全简书
  • solaris命令
  • 开源操作系统总结
  • xp的兼容模式
  • 自动锁定系统
  • window7截图工具无法使用
  • 系统升级为中狼
  • 电脑操作系统win8
  • linux服务器的mac地址怎么查
  • neoCapture.exe - neoCapture是什么进程 有什么用
  • 2016年Win10 RedStone将重大改版 微软小娜可以浮动
  • win8怎么改成win10
  • linux用root登录
  • 请问在javascript程序中
  • vim三种模式及其之间的切换
  • IE6/IE7/IE8/IE9中tbody的innerHTML不能赋值的完美解决方案
  • js脚本使用
  • java scripts
  • ssh,scp自动登陆的实现方法
  • python爬虫怎么做
  • jquery model
  • go 与 python
  • scroll-view组件用于实现
  • python有没有二维数组
  • 购物金怎么退换面额的
  • 企业房产如何过户给个人
  • 湖北国税发票手机查询
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设