首页 > 编程笔记 > Java笔记 阅读:17

Java方法重载详解(附带实例)

Java 中的方法重载(method overloading)是指在同一个类中可以有多个同名的方法,但这些方法的参数列表必须不同。

参数列表的不同可以体现在参数的数量、参数的类型或参数的顺序上。方法重载与方法的返回类型无关,只与方法的名称和参数列表有关。

方法重载的主要目的是允许同一个类中的多个方法使用相同的名字,但执行不同的任务,这取决于传递给它们的参数。

Java方法重载的规则

Java方法重载的实现

方法重载的实现有以下三种方式。

1) 参数个数不同

定义多个具有相同名称的方法,其中每个方法的参数个数不同。

【实例】在项目中创建类 MethodDemo05,实现方法重载中参数个数的不同,代码如下:
/**
* 方法重载第一个实现: 参数个数不同
*/
public class MethodDemo05 {
    public void addTest01(int num){
        System.out.println("addTest01 方法中有 1 个参数");
    }
   
    public void addTest01(int num,int num2){
        System.out.println("addTest01 方法中有 2 个参数");
    }
}
在上述代码中,我们可以看出第一个 addTest01 方法有 1 个参数,第二个 addTest01 方法有 2 个参数,实现了参数个数的不同,参数个数的不同就是方法重载。

2) 参数类型不同

定义多个具有相同名称的方法,其中每个方法的参数类型不同。

【实例】在项目中创建类 MethodDemo06,实现方法重载中参数类型的不同,代码如下:
/**
* 方法重载的第二种实现方式:参数类型不同
*/
public class MethodDemo06 {
    public void addTest01(int num){
        System.out.println("addTest01 方法中的参数为 int 类型");
    }
   
    public void addTest01(String num){
        System.out.println("addTest01 方法中的参数为 String 类型");
    }
}
在上述代码中,我们可以看出第一个 addTest01 方法中的参数为 int 类型,第二个 addTest01 方法中参数为 String 类型,实现了参数类型的不同,参数类型的不同就是方法重载。

3) 参数顺序不同

定义多个具有相同名称的方法,其中每个方法的参数顺序不同。

【实例】在项目中创建类 MethodDemo07,实现方法重载中参数顺序的不同,代码如下:
public class MethodDemo07 {
    public void addTest01(int num, String name){
        System.out.println("addTest01 的参数顺序不同, 第一个参数是 int 类型, 第二个参数是 String 类型");
    }
   
    public void addTest01(String name,int num){
        System.out.println("addTest01 的参数顺序不同, 第一个参数是 String 类型, 第二个参数是 int 类型");
    }
}
在上述代码中,我们可以看出第一个 addTest01 方法的第一个参数是 int 类型,第二个参数是 String 类型,第二个 addTest01 方法的第一个参数是 String 类型,第二个参数是 int 类型,实现了参数顺序的不同,参数顺序的不同就是方法重载。

在 Java 程序中,使用方法重载具有以下 2 个优势:

相关文章