立即注册 找回密码

QQ登录

只需一步,快速开始

第一站长论坛

搜索
1框架
查看: 287|回复: 0

PHP面向对象程序设计模拟一般面向对象语言中的方法重载(overload)示例

[复制链接]
发表于 2019-6-27 18:12 | 显示全部楼层 |阅读模式
本文实例讲述了PHP模拟一般面向对象语言中的方法重载(overload)。分享给大家供大家参考,具体如下:
在一般的面向对象设计语言(如C++,Java)中的方法重载就是定义相同的方法名,通过“参数的个数”不同或“参数的类型”不同,来访问我们的相同方法名的不同方法。但是PHP 中,方法是不能重载的,因为PHP 是弱类型的语言,所以在方法的参数中本身就可以接收不同类型的数据,又因为PHP 的方法可以接收不定个数的参数,所以通过传递不同个数的参数调用不相同方法名的不同方法也是不成立的。所以在PHP 里面没有传统上的重载(overload)方法,但由于php其灵活性,可以模拟一般面向对象语言中的重载方法。
在PHP中模拟一般面向对象语言中的方法重载(overload)
首先来看一个例子:
  1. [/code]运行结果:
  2. [indent]314
  3. 40
  4. [/indent][color=#0000ff][b]利用PHP的重载(overloading)技术,实现一般面向对象语言中的方法重载(overload)[/b][/color]
  5. 下面的例子是利用利用PHP的重载(overloading)技术,使用魔术方法,来实现传统上的方法重载(overload)。
  6. [indent]关于PHP中的重载技术,请参考:PHP面向对象_重载(overloading)
  7. [/indent]例子:
  8. [code]
复制代码
运行结果为:
v1= 1, v2 = 13, v3 = 405
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。

免责声明:如果侵犯了您的权益,请联系我们,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|第一站长论坛 ( 闽ICP备16019670号 )

GMT+8, 2019-9-15 22:24 , Processed in 0.060553 second(s), 22 queries .

Powered by Discuz! X3.4 © 2001-2013 Comsenz Inc & Style Design

本站提供网上自由讨论使用,所有言论内容来自互联网并不代表本站立场,本站不负任何责任.
如发现有侵权行为,请与我们联系. 我们将立刻从网站上删除,并向所有持版权者致最深歉意.
联系QQ:2837195923

快速回复 返回顶部 返回列表