Heim >Backend-Entwicklung >PHP-Tutorial >Vergleichsfall von Java- und PHP-Überladung
Wir wissen, dass PHP eine schwach typisierte Sprache ist und keine Überladung aufweist wie stark typisierte Sprachen wie JAVA. Nach dieser Definition ist PHP nicht überlastet, da PHP nicht zulässt, dass derselbe Funktionsname existiert.
Aber es nicht zu haben bedeutet nicht, dass es nicht erreicht werden kann.
1. Schauen wir uns zunächst ein Überladungsbeispiel in Java an:
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); } }
Was wäre, wenn wir PHP verwenden würden, um das obige Beispiel zu implementieren?
<?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. Optionale Parameter, die es Variablen ermöglichen, Standardwerte festzulegen
Beispiel für eine JAVA-Überladung:
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); } }
Verwendung der optionalen PHP-Parameterfunktion:
<?php function sum($var1,$var2,$var3=NULL){//$var3设置默认值 echo $var1+$var2+$var3; } sum(1,2);//2 sum(1,2,3);//2.5 ?>
Sie können die gleiche Funktionalität sehen, aber sie ist einfacher in einer schwach typisierten Sprache wie PHP zu implementieren
Das obige ist der detaillierte Inhalt vonVergleichsfall von Java- und PHP-Überladung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!