Java 方法重载

方法重载

通过方法重载,多个方法可以拥有相同的名称和不同的参数:

实例

int myMethod(int x)
float myMethod(float x)
double myMethod(double x, double y)

请考虑下面的例子,其中有两个方法可对不同类型的数字相加:

实例

static int plusMethodInt(int x, int y) {
  return x + y;
}

static double plusMethodDouble(double x, double y) {
  return x + y;
}

public static void main(String[] args) {
  int myNum1 = plusMethodInt(8, 5);
  double myNum2 = plusMethodDouble(4.3, 6.26);
  System.out.println("int: " + myNum1);
  System.out.println("double: " + myNum2);
}

亲自试一试

与其定义两个应该做同样事情的方法,不如重载一个。

在下例中,我们重载了 plusMethod 方法以同时适用于 intdouble

实例

static int plusMethod(int x, int y) {
  return x + y;
}

static double plusMethod(double x, double y) {
  return x + y;
}

public static void main(String[] args) {
  int myNum1 = plusMethod(8, 5);
  double myNum2 = plusMethod(4.3, 6.26);
  System.out.println("int: " + myNum1);
  System.out.println("double: " + myNum2);
} 

亲自试一试

注意:只要参数的数量和/或类型不同,多个方法就可以拥有相同的名称。