【Java】3.5方法的重载(overload)

        方法的重载是指一个类中可以定义多个方法名相同,但参数不同的方法。调用时,会根据不同的参数自动匹配对应的方法。

菜鸟雷区:重载的方法,实际是完全不同的方法,只是名称相同而已。

构成方法重载的条件如下:

  • 不同的含义:形参类型形参个数形参顺序不同
  • 只有返回值不同不构成方法的重载,如int a(String str){ }与void a (String str){ }不构成方法重载。
  • 只有形参的名称不同,不构成方法的重载,如int a(String str){ }与int a(String s){ }不构成方法的重载。
package chap3_方法;

/**
 * 方法重载
 */

public class Test02 {
    public static void main(String[] args) {
        int sum = add(3,5);
        System.out.println(sum);         //8
        System.out.println(add(3,5,10)); //18
        System.out.println(add(3.0,5));  //8.0
        System.out.println(add(3,5.0));  //8.0

        System.out.println();            //0个参数
        System.out.println(1);           //参数是一个int
        System.out.println(3.0);         //参数是一个double
    }
    /*求和的方法*/
    public static int add(int n1,int n2){
        int sum = n1 + n2;
        return sum;
    }
    //方法名相同,参数个数不同,构成重载
    public static int add(int n1,int n2,int n3){
        int sum = n1 + n2 + n3;
        return sum;
    }
    //方法名相同,参数类型不同,构成重载
    public static double add(double n1,int n2){
        double sum = n1 + n2;
        return sum;
    }
    //方法名相同,参数顺序不同,构成重载
    public static double add(int n1,double n2){
        double sum = n1 + n2;
        return sum;
    }
    //编译错误:只有返回值不同,不构成方法的重载
    public static double add(int n1,int n2){
        double sum = n1 + n2;
        return sum;
    }
    //编译错误:只有参数名称不同,不构成方法的重载
    public static int add(int n2,int n1){
        double sum = n1 + n2;
        return sum;
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值