PHP中的java方式重载_PHP_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > PHP > PHP中的java方式重载

PHP中的java方式重载

 2011/11/17 9:36:51  leiyonglin  http://leiyonglin.iteye.com  我要评论(0)
  • 摘要:有的时候,能够调用可变参数的同一个方法会非常方便。PHP能够定义带默认值的可选参数使这一做法成为可能。可以在php5中用__call()实现这种方法重载。下面来看一个示例。假设要用重载行为,那么要将其放到抽象父类中。abstractclassOverloadableObject{function__call($name,$args){$method=$name."_".count($args);if(!method_exists($this,$method))
  • 标签:PHP Java 方式 重载

有的时候,能够调用可变参数的同一个方法会非常方便。PHP能够定义带默认值的可选参数使这一做法成为可能。

可以在php5中用__call()实现这种方法重载。下面来看一个示例。假设要用重载行为,那么要将其放到抽象父类中。


这个类方法的主要行为都在 显示一行代码中定义了。如果调用未定义方法,__call()方法会生成一个新方法,其名称由原始方法和参数个数构成,用下划线分开。然后用新生成的方法名调用改方法,将原来的参数也一起传递过去。

现在,如果要使用一个名为multiply的重载方法,可以使用两个或三个参数来调用它,并在每种情况下进行相应操作,可以分别用两个方法:multiply_2和multiply_3

为了使用这段代码,只调用带有两个或三个参数的multiply方法。

$multi = new Multiplier;

echo $multi->multiply(5,6)."\n";

echo $multi->multiply(5,6,7)."\n";

?

发表评论
用户名: 匿名