方法
方法:方法就是若干语句的功能集合。
参数:进入方法的数据。
-
有参数:小括号中有内容,当一个方法需要一定的数据条件才能完成任务的时候,就是有参数。
-
无参数:小括号中没有内容,一个方法不需要任何条件,自己能独自完成任务,就是无参数。
返回值:从方法中出来的数据。
-
有返回值:有值传递给方法体。
-
无返回值:没有值传递给方法体。
方法定义
基本格式:
[修饰符...] [返回值类型] [方法名称]([参数名称 参数类型, ...]){
[方法体];
[return返回值];
}
方法调用
三种调用方式:
- 单独调用
- 打印调用
- 赋值调用
流程:第一步:找到方法。第二步:参数传递。第三步:执行方法。体第四步:带着返回值回到方法的返回处。
基本格式:
public class Test {
public static void main(String[] args) {
//单独调用
sum(10,20);
//打印调用
System.out.println(sum(20,30));
//赋值调用
int number = sum(30,40);
System.out.println(number);
}
public static int sum(int a, int b){
int c = a + b;
System.out.println("方法调用了");
return c;
}
}
方法重载
方法的重载(Overload):多个方法的名称一样,参数列表不同。
方法重载有关因素:
- 参数个数不同。
- 参数类型不同。
- 多类型顺序不同。
方法重载无关因素:
- 与参数名称无关。
- 与参数的返回值类型无关。
- 与修饰符无关。
public class Test {
public static void main(String[] args) {
System.out.println(sum(1,2)); //3
System.out.println(sum(1,2,3)); //6
System.out.println(sum(1,2,3,4)); //10
System.out.println(sum(10,20,30,40.0)); //100
}
public static int sum(int a, int b){
int s = a + b;
return s;
}
public static int sum(int a, int b,int c){
int s = a + b +c;
return s;
}
public static int sum(int a, int b,int c, int d){
int s = a + b + c + d;
return s;
}
public static double sum(int a, int b,int c, double d){
double s = a + b + c + d;
return s;
}
}
public class Test {
public static void main(String[] args){
int a = 3,b = 4;
System.out.println(isSame((byte)a,(byte)b));
System.out.println(isSame(12,12));
System.out.println(isSame(12.2F,11.3F));
}
public static boolean isSame(byte a , byte b){
System.out.println("两个byte参数比较");
boolean s;
if(a==b){
s=true;
}else {
s=false;
}
return s;
}
public static boolean isSame(int a , int b){
System.out.println("两个int参数比较");
boolean s;
if(a==b){
s=true;
return s;
}else {
s=false;
return s;
}
}
public static boolean isSame(float a,float b){
System.out.println("两个float参数比较");
boolean s = a==b ? true:false;
return s;
}
/*
两个byte参数比较
false
两个int参数比较
true
两个float参数比较
false
*/
}
注意事项:
- 方法只能定义在类内,方法体之外,不能产生嵌套包含关系。
- 方法定义之后不会执行,必须通过调用才能执行。
- 方法定义的先后顺序无关系。
- 方法体内可以调用其他方法,包括自己。
- return有两个作用,第一是停止当前方法,第二是将结果数据返回给方法。return返回值,和方法的返回值类型必须一致。
- 对于有返回值的方法可以使用单独调用,打印调用,赋值调用。对于没有返回值的方法只能使用单独调用。
- 如果方法有返回值,必须写上
return [返回值]
,不能没有。如果方法无返回值,可以写return;
,也可以省略。如果一个方法中有多条return;
语句,必须保证同时只能有一个被执行到。两个return;
不能连写。