方法重载- Java vs PHP

来源:互联网 发布:手机有声小说软件 编辑:程序博客网 时间:2024/03/28 19:34
Java中是允许方法重载的,也就是说在同一个类中,可以有两个或多个相同名字的方法。但前提条件是这些方法的参数列表不同(注意:不能以返回值来区分重载函数)。例如,在JDK中:java.lang.math中
public static int abs(int a) {
    return (a < 0) ? -a : a;   
}

public static long abs(long a) {      
    return (a < 0) ? -a : a;
}

public static float abs(float a) {
    return (a<= 0.0F) ? 0.0F -a ; a;
}

在PHP中,由于是弱类型语言,所以PHP不支持方法重载(因为方法重载靠形参个数或者形参的数据类型来区分),但弱类型语言能支持可选参数。
例如:
function add($a, $b, $c = NULL) {
    return $a + $b +$c;
}

调用的时候用add(1, 2), $c作为可选参数就行了。

原创粉丝点击