Java方法重载:哪个add方法会被调用?

您提供的Java代码展示了方法重载的概念。让我们深入分析一下:javaclass Calculator { int add(int a, int b) { return a + b; }

double add(double a, double b) {        return a + b;    }}

public class Main { public static void main(String[] args) { Calculator calculator = new Calculator(); System.out.println(calculator.add(5, 7)); // 调用哪个add方法? System.out.println(calculator.add(3.2, 4.5)); // 调用哪个add方法? }}

代码解析

  • Calculator类定义了两个名为'add'的方法。 这就是方法重载:在同一个类中,可以有多个同名的方法,只要它们的参数列表不同(参数类型或数量不同)。* 在main方法中,我们创建了一个Calculator对象,并调用了两次'add'方法。

方法调用分析

  1. calculator.add(5, 7): - 传入的参数是整数5和7。 - Java会选择匹配参数类型为整数的'add'方法,即 int add(int a, int b)。 - 因此,该调用将返回12。

  2. calculator.add(3.2, 4.5): - 传入的参数是浮点数3.2和4.5。 - Java会选择匹配参数类型为浮点数的'add'方法,即 double add(double a, double b)。 - 因此,该调用将返回7.7。

程序输出

运行这段代码,输出结果如下:

127.7

总结

通过这个例子,我们学习了Java中的方法重载。当调用一个重载方法时,Java编译器会根据传入的参数类型和数量选择最匹配的方法版本。

Java方法重载:哪个add方法会被调用?

原文地址: https://www.cveoy.top/t/topic/pS4 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录