Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Java与php 实现重载对比案例

Java与php 实现重载对比案例

小云云
小云云asal
2017-11-08 13:35:191220semak imbas

我们知道php属于弱类型语言,并没有像JAVA这种强类型语言一样有重载。从这个定义来说,php是没有重载的,因为php不允许存在相同的函数名。 

但是没有并不意味着不能实现。

1.首先先让我们看看Java的一重载个例子:

class demo { public static void main (String[] args) { sum(1,1);//2 sum(1,1.5);//2.5 sum(1.5,1.5);//3.0 } public static void sum(int var1,int var2){ System.out.println(var1+var2); } public static void sum(int var1,double var2){ System.out.println(var1+var2); } public static void sum(double var1,double var2){ System.out.println(var1+var2); } }

如果用PHP去实现上面的例子那怎么做呢?

<?php function sum($var1,$var2){ echo $var1+$var2; } sum(1,1);//2 sum(1,1.5);//2.5 sum(1.5,1.5);//3 ?>

2.可选参数,允许变量设置默认值

JAVA重载例子:

class demo  
{
    public static void main (String[] args)
    {
        sum(1,2);//3
        sum(1,2,3);//6
    }
    public static void sum(int var1,int var2){
            System.out.println(var1+var2);
    }
    public static void sum(int var1,int var2,int var3){
            System.out.println(var1+var2+var3);
    }
}

用php可选参数特性实现:

<?php function sum($var1,$var2,$var3=NULL){//$var3设置默认值 echo $var1+$var2+$var3; } sum(1,2);//2 sum(1,2,3);//2.5 ?>

可以看到同样的功能,但是php这种弱类型语言实现起来更简单


Atas ialah kandungan terperinci Java与php 实现重载对比案例 . Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn