【PHP面向对象技术】PHP 实现函数重载.pdfVIP

【PHP面向对象技术】PHP 实现函数重载.pdf

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
战战地地 日日记记__LLAAMMPP兄兄弟弟连连 职职场场如如战战场场,,战战场场需需要要军军人人,,而而职职场场需需要要的的是是职职业业人人 !!战战地地 日日记记是是展展现现 LLAAMMPP兄兄弟弟连连新新兵兵 (( 生生、、社社会会人人))转转变变为为合合格格军军人人 ((职职业业人人))的的心心路路历历 程程,,记记录录连连队队 (( 习习))生生活活的的点点点点滴滴滴滴,,分分享享其其中中的的收收获获与与快快乐乐 !!提提升升 职职业业竞竞争争力力 【【PPHHPP面面向向对对象象技技术术】】PPHHPP 实实现现函函数数重重载载 2012-11-30 09:19 57人阅读 评论 (0) 收藏 举报 众所周知的,PHP是弱类型的动态语言,动态语言的动态表现在各个方面,变量类型动态,函数参数动态。动态参数 这个参数决定了 PHP不支持 (也不需要)支持函数重载。 (PS:函数重载可以看成是行为 (函数或操作符)的多态行为,重载的唯一要求就是不能产生多义性 (强类型语言表现 在同一行为的重 载的形参列表不能有两个 (或以上)完全相等的情况)。 为什么需要在PHP代码中出现限制这么多的重载嘞? 我对PHP是这样理解的:最初的PHP仅仅是作为一种解释脚本用来动态构建HTML页面,即是HTML页面与MYSQL连接的桥 梁。而最初的 脚本规模是不大的,在小规模的程序中,动态技术可以便捷的开发。但是,当程序处理越来越复杂,动态的弊病也 日益凸显动态 技术让开发迅速,却让代码测试调试变得艰难。在一个复杂的程序中,保持程序的健壮性是很重要的。有过项 目经 验的童鞋能够感觉 到 (你们是不是大部分时间在找bug,找完bug之后改bug。bug改完之后继续下一个bug)。静态语言的 好处就是快速的定位错误。 PHP6对强类型限制也增加了内容。。。。 PDO库的函数 PDO::query ()就是重载了 (没有读过PDO源码,不胡说它的实现。不过它的设计就是重载思想)。     我对其原型的猜测如下 class PDO {     public function query (){     //这里使用func_get_args()得到形参列表,利用该形参列表进行判断     //再调用相关的以下的私有方法     //这么处理的好处就是在下面的私有方法中,我们完全可以假定形参类型是已知的     //在这些private 函数中,我们不需要进行任何形参判断,可以十分舒服的写这些具体实现    函数     //这个self::query ()作为一个接口供外部调用,self::query ()的唯一 目标就是进行函数调度。    同时也实 现了程序的分离     // (我一直奉行一个函数只干一件事的编程方法,同时也认为将一个函数写出超过一屏是一种糟糕的编程习 惯)。         }     private function query_1(string);     private function query_2(string,int,int);     private function query_3(string,int,string,array);     private function query_4 (string,int,object); } 这么写的好处是对于private function query_ [1,2,3,4]这几个方法调试是非常方便的。至少我们保证了错误不是 由于变量类型等未知 因素引起的,我们可以花更多的时间测试函数过程。当然,也破坏了动态性。不过PHP 自己也在干这事,元芳都不会 怎么看的。 关于动态,我的个人看法是程序越来越复杂的时候,动态的优势越来越少,而弊病越来越严重。 我举这个例子是想要说明PHP是动态语言,但是也不是不可以有静态语言的解决方案。C/C++是静态语言,也不说明 他们不可以有动态技术。 让思维再开阔一点,你的代码将会更加优雅。 骚年们,为了优雅的代码而奋斗撒 ! 以上言论纯属个人胡说八道,不代表本人的立场,也不代表本人会持久的坚持以上观点, 1 以上言论纯属个人胡说八道,不代表本人的立场,也不代表本人会持久的坚持以上观点, 也不愿代替其他人的立场 后记:在该文写作之前,并没有开始 习EXTJS框架。现在知道了javascript可以变得和JAVA一样,ExtJS的设计和

文档评论(0)

tcpe + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档