Java方法重载:哪个add方法会被调用?
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'方法。
方法调用分析
-
calculator.add(5, 7): - 传入的参数是整数5和7。 - Java会选择匹配参数类型为整数的'add'方法,即int add(int a, int b)。 - 因此,该调用将返回12。 -
calculator.add(3.2, 4.5): - 传入的参数是浮点数3.2和4.5。 - Java会选择匹配参数类型为浮点数的'add'方法,即double add(double a, double b)。 - 因此,该调用将返回7.7。
程序输出
运行这段代码,输出结果如下:
127.7
总结
通过这个例子,我们学习了Java中的方法重载。当调用一个重载方法时,Java编译器会根据传入的参数类型和数量选择最匹配的方法版本。
原文地址: https://www.cveoy.top/t/topic/pS4 著作权归作者所有。请勿转载和采集!