什么是方法重载?
Java方法重载是指在同一个类中可以定义多个同名方法,但是这些方法需要在不同的参数列表上进行调用。
也就是说,当调用该方法时,Java会根据方法的参数列表来判断应该调用哪一个方法。
方法重载可以让程序更加灵活,能够处理不同的数据类型和参数组合,是面向对象编程的重要特性之一。
可以通过方法名称相同,参数类型或数量不同来重载方法。
重载方法必须在同一个类中定义
对于方法重载的理解
- 方法重载必须在同一个类中,方法名相同,不同的参数列表,不同的参数类型,不同的参数数量
- JVM通过方法的参数列表,调用不同的方法
方法重载的两个示例
注:
传递类型不同称为重载, 调用时若与任意一方法内参数内容不同,则报错
定义不同的功能
public class Demo { public void add(int a, int b) { int sum = a + b; System.out.println("两数之和: " + a + " 和 " + b + " 是 " + sum); } public void add(double a, double b) { double sum = a + b; System.out.println("两数之和: " + a + " 和 " + b + " 是 " + sum); } public void add(String a, String b) { String c = a + " " + b; System.out.println("字符串相加: " + a + " 和 " + b + " 是 " + c); } public static void main(String[] args) { Demo do = new Demo(); do.add(10, 20); do.add(10.5, 20.5); do.add("Hello", "World"); } }
在这个例子中,add()方法被重载了三次
每个方法都有自己不同的参数,当我们传递对应的参数,编辑器会根据传递的参数自动找到对应方法并调用
pringln打印不同类型
public class Demo { public void setPrint(int a, int b) { System.out.println(a, b); } public void setPrint(double a, double b) { System.out.println(a, b); } public void setPrint(String a, String b) { System.out.println(a, b); } public static void main(String[] args) { Demo do = new Demo(); do.add(10, 20); do.add(10.5, 20.5); do.add("Hello", "World"); } }
在这个例子中,setPrint()方法被重载了三次
每个方法都有自己不同的参数,当我们传递对应的参数,编辑器会根据传递的参数自动找到对应方法并在控制台输出对应的内容