方法的定义、参数和返回值 、方法重载

 1.1 方法的详细格式

修饰符   返回值类型   方法名(数据类型  变量名,数据类型  变量名......){

                     代码

                     return 值;

}

  • 修饰符:public static
  • 返回值类型:
  1. void表示没有返回值。
  2. 基本类型8种:byte,short,int,long,float,double,char,boolean。
  3. 引用数据类型:类,数组,接口。
  • 方法名:满足标识符规范,取个名字,做到见名知意
  • 参数列表:(数据类型  变量名,数据类型  变量名......)可以理解为在定义变量,未知数据作为参数列表。
  • 代码:我们学过的都可以往里面放。
  • return 值:(方法的返回值)
  1. 结束方法。
  2. 将结果返回到调用的地方。
  3. 注意:返回值是void,不用 写return

 1.2 我们知道方法的返回值类型和参数列表可以任意写,返回值类型和参数列表到底写什么?

根据方法的功能来确定返回值类型和参数列表。

  • 定义方法需要明确两点:
  1. 返回值类型
  2. 参数列表
  • 需求:定义方法实现两个整数的求和计算(定义方法需要明确两点)
  1. 返回值类型:两个整数的求和结果是整数,int,返回值是int类型
  2. 参数列表:站在方法的角度,未知的数据作为参数列表,哪两个整数未知(int a,int b)
  • 形式参数(形参):定义方法时的参数列表(没有具体值)
  • 实际参数(实参):调用方法时传递的具体值 
public class addTest01 {
    public static void main(String[] args) {
        int sum = add(12,4); //实际参数(实参):调用方法时传递的具体值  (12,4)
        System.out.println("sum="+sum);
    }
    public static int  add(int a,int b){//形式参数(形参):定义方法时的参数列表(没有具体值)
        int c = a+b;
        return  c;
    }
}

2.1 调用方法的三种形式

  • 直接调用:方法名(参数); 没有对返回值进行处理
  • 赋值调用:数据类型   变量名=方法名(参数); 可以对结果进行处理
  • 输出调用:System.out.println(add(参数));输出方法的返回值
  • 注意:不能用输出语句调用void 类型的方法。因为方法执行后没有结果,也就打印不出任何内容。(只能使用直接调用)
public class addTest01 {
    public static void main(String[] args) {
        //方式1:直接调用:方法名(参数); 没有对返回值进行处理
        add(10,12);
        //方式2:赋值调用:数据类型   变量名=方法名(参数); 可以对结果进行处理
        int sum = add(12,4);
        System.out.println("sum="+sum);
        //方式3:输出调用:System.out.println(add(参数));输出方法的返回值
        System.out.println(add(10,12));
    }
    public static int  add(int a,int b){
        int c = a+b;
        return  c;
    }
}

2.1 定义方法的注意事项

  •  定义位置,类中方法外面。(比如常见的写在main方法外面)
  • 调用方法时写错方法名字。
  • 调用方法时写错参数列表。
  • 返回值类型,必须要和return语句返回值类型相同,否则编译失败。
  • 不能在return后面写代码,return意味着方法结束,所有后面的代码永远不会执行,属于无效代码。

3.1 方法重载

  • 定义2个int求和,定义3个int求和。我们发现2个数求和,3个数求和的功能是一样的,如果定义不同的方法名使用起来很不方便,最好取相同的名称,就像人吃饭的功能一样,不管吃面、吃米饭,都叫吃饭的功能。
  • 方法重载:指在同一个类中,方法名相同,参数列表不同,与修饰符和返回值类型无关,
  • 参数列表:个数不同、数据类型不同、顺序不同。
  • 重载方法调用:JVM通过方法的参数列表,调用不同的方法。
  • 方法重载的好处:方法我们使用,只需要记住一个方法名。
public class Demo {
    public static void main(String[] args) {
        System.out.println(add(1,2,34));
        System.out.println(add(12,34));
    }
    //定义2个byte数求和
    public static int add(byte b1,byte b2){
        return b1+b2;
    }
    //定义2个int数求和
    public static  int add(int a,int b){
        return a+b;
    }
    //定义3个int数求和
    public static int add(int a,int b,int c){
        return a+b+c;
    }
}

猜你喜欢

转载自blog.csdn.net/Huangyuhua068/article/details/81417212