一、方法是什么
在我们的日常生活中,方法可以理解为要做某件事情,而采取的解决办法。
方法是我们解决事情的一个工具,比如求一个矩形面积的方法,将他的长宽放进去,可以返回面积;在java中,方法是解决某件问题,和实现某个功能的办法。
方法实现的过程中,会包含很多条语句用于完成某些有意义的功能——通常是处理文本,控制输入或计算数值。
我们可以在编程中,引用方法名称和所需的参数,实现在该程序运行(或调用)该方法。一般都有一个返回值,作为处理的结果
作用
用来实现程序功能的
将实现功能的代码封装到方法中,通过调用方法实现功能,提高代码复用率
注意
同样的方法(方法名和参数都相同)在同一类中不能重复定义
方法只能定义在类中,方法不能嵌套方法
二、方法的定义
创建一个方法
修饰符 返回值类型 方法名(参数1,参数2...){
方法体
}
终止方法
public static int add(int n1,int n2){
int sum = n1 + n2;
return sum;//return的作用是返回并退出次方法,返回程序继续执行
}
如果方法返回值类型是void
public static void add(int n1,int n2){
int sum = n1+n2;
System.out.println(sum);//那么调用它一定是语句
}
#### 三、方法的重载
重载就是在一个类中,有相同的方法名,有不同的形参的函数
方法重载的规则:
方法名称必须相同
参数列表必须不同(个数不同,或类型不同,参数排列顺序不同等)
方法的返回类型可以相同也可以不同,但仅仅返回类型不同不足以成为方法的重载
四、如何通过命令行来传递参数
有时候你需要运行一个程序再给他传递消息时,就要用到命令行传递参数
args
cmd 编译 javac 源文件名.java
运行 java 源文件名 参数
五、可变参数
可变参数又称参数个数可变,用作方法的形参出现,那么方法的参数个数就是可变的了
书写格式
public static int add(int...a){
int sum = 0;
for(i:a){
sum+=i;//遍历数组 赋给i
}
return sum;
}
可变参数变量是一个数组如果一个方法有多个参数包含可变参数,可变参数一定要放在最后
public static int add(double n1,int n2,int...a){
int sum = n1 + n2;
for(i:a){
sum+=i;
}
return sum;
}
递归(重点)
递归就是自己调用自己
递归分为两种:
直接递归:方法自身调用自己。
间接递归:A方法调用B方法,B方法调用C方法,C方法再调用A方法。
注意事项:
递归一定要有条件限定,保证递归能够停下来,否则会形成死循环造成栈内存溢出
递归中虽然限定了停止下来的条件,但是递归次数不能太多,否则也会发生栈内存溢出。
禁止构造方法递归



