方法重载是指在同一个类中可以定义多个方法,这些方法具有相同的名字,但参数列表不同。在Java中,方法重载可以通过以下方式实现:
- 方法名相同,参数列表不同:可以通过改变方法的参数个数、参数类型、参数顺序来实现方法重载。
public class OverloadExample { public void add(int a, int b) { System.out.println(a + b); } public void add(double a, double b) { System.out.println(a + b); } public void add(int a, int b, int c) { System.out.println(a + b + c); } }
-
方法名相同,返回类型不同:不能通过返回类型来区分方法重载,只能通过方法的参数列表来区分。
-
方法名相同,访问修饰符不同:可以通过改变方法的访问修饰符来实现方法重载。
public class OverloadExample { public void add(int a, int b) { System.out.println(a + b); } private void add(double a, double b) { System.out.println(a + b); } }
- 方法名相同,抛出异常不同:可以通过抛出不同的异常来实现方法重载。
public class OverloadExample { public void add(int a, int b) throws ArithmeticException { if (b == 0) { throw new ArithmeticException("Divide by zero"); } System.out.println(a / b); } public void add(int a, int b) throws IllegalArgumentException { if (b == 0) { throw new IllegalArgumentException("Cannot divide by zero"); } System.out.println(a / b); } }
通过以上方式,可以正确使用方法重载来提高代码的灵活性和可读性。