目录
方法概述:
若干语句的功能集合。
将一个功能抽取出来,把代码单独定义在一个大括号内,形成一个单独的功能
需要这个功能时,就去调用这个方法,实现了代码的复用性,也解决了代码冗余的现象
参数:
进入方法的数据
有参数: 当方法需要一些数据条件,才能完成任务的时候,就是有参数
无参数: 小括号中留空。一个方法不需要任何数据条件,自己就能独立完成任务,就 是无参数
返回值:
从方法中出来的数据
方法定义:
基本格式:
修饰符 返回值类型 方法名称(参数类型 参数名称,...){
方法体
return 返回值;
}
修饰符: 现阶段的固定写法:public static
返回值类型: 方法最终产生的数据结果是什么类型
方法名称: 命名规则和变量一样,使用小驼峰
参数类型: 进入方法的数据是什么类型
参数名称: 进入方法的数据对应的变量名称
方法体: 大括号当中可以包含任意条语句
return: 1、停止当前方法 2、后面的返回值还给调用处
注意:return后面的返回值,必须和方法名称前面的‘返回值类型’保持对应
返回值: 方法执行后最终产生的数据结果
有返回值/无返回值
public static void main(String[] args) {
print1();//方法调用
}
public static void print1(){
System.out.println(1);
}
public static int sum(int a,int b){
return a+b;
}
System.out.println(sum(3,8));//11
注意事项:
1、方法定义的先后顺序无所谓
2、方法的定义不能产生嵌套包含关系
3、方法定义好后,如果想要执行,一定要进行方法的【调用】
4、如果方法有返回值,那么必须写上return 返回值,不能没有
5、对应一个void没有返回值的方法,不能写return后面的返回值,只能写return自己
public static void method(){
sout("aaa");
sout("bbb");
return;
}
7.对于方法中最后一行的return可以不写(void)
public static void method(){
sout("aaa");
sout("bbb");
}
8、一个方法中可以有多个return语句,但是必须保证同时只有一个被执行到
if(a>b)return a;
else return b;
方法的调用:
1、单独调用: 方法名称(参数); 适合返回值为void 的方法
2、打印调用: System.out.println(方法(参数)) ; 打印方法返回值
3、赋值调用: int num=sum(10,29); 将方法的返回值赋给另一个变量
注意:对于无返回值的方法,只能使用单独调用,不能使用打印调用或者赋值调用
方法调用的流程:
1、找到方法 2、参数传递 3、执行方法体 4、带着返回值回到方法的调用处
方法的重载(Overload):
多个方法的名称一样,但是参数列表不同(与public void 无关)
好处:只需要记住唯一一个方法名称
(对于功能类似的方法来说,因为参数列表不一样,去需要那么多不同的方法名称)
参数列表有关因素:
1、参数个数不同
2、参数类型不同
3、参数多类型顺序不同
参数类别无关因素:
1、参数名称
2、参数返回值类型
public static int sum(int a,int b){
return a+b;
}
public static int sum(double a,double b){
return (int) (a+b);
}
public static int sum(int a,double b){
return (int)(a+b);
}
public static void main(String[] args) {
System.out.println(sum(1,2));
System.out.println(sum(1,2,3));
System.out.println(sum(1,2,3,4));
}
public static int sum(int a,int b){
return a+b;
}
public static int sum(int a,int b,int c){
return a+b+c;
}
public static int sum(int a,int b,int c,int d){
return a+b+c+d;
}