方法重载和方法递归
一,方法重载方法重载的存在是考虑到有些方法功能虽然不同,但是“功能相似”时,有一种机制可以让我们使用该方法时像在用同一个方法一样,这样就不需要再次创建更多的方法名。这就是方法重载(overload)的作用
举例:
public static void main (String args[]) {
String Words=Asd("姓名","年龄");
System.out.println(Words);
}
public static String Asd(String a,String b) {
String a1=null;
String b1=null;
return (a)+" "+(b);
二,方法重载的使用规则
(1)重载的使用是在功能相似,功能不同的时候,尽可能区分开方法名字
(2)重载要满足在同一个类中,方法名相同,参数列表不同,数目不同,顺序不同,类型不同
举一些例子:
public static void example1(){ }
public static void example1(int a){ }//它们符合重载的使用
public static void example2(int a,double b){ }
public static void example2(double a,int b){ }//它们符合重载使用
public static void example3(int x){ }
public static void example3(double x){ }//它们符合重载使用
public static void example4(int a,int b){ }
public static void example4(int b,int a){ }//不符合上述规则,这个东西应该叫重复,而不是重载,形参起到关键作用的是类型,不是变量的改变。
三,递归
(1)递归就是调用自身的方法
(2)递归如果没有结束条件栈内存溢出,就会导致jvm停止工作并报错
(3)在一些目录拷贝的时候需要用到递归,通常能别用就别用。
(4)递归自身过多,也会出现栈满
例子:
public static void main (String args[]) {
int number=20;
int reasult=s1(number);
}
public static int s1(int n) {
if(n/2==1) {
System.out.println( n);
return 1;
}
return s1(n-1);//输出为3
}
}