以下是您提供的 Java 代码:

class 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));
        System.out.println(calculator.add(3.2, 4.5));
    }
}

在这段代码中,第一个 add 方法 int add(int a, int b) 会被调用。这是因为在第一个调用中,我们传入的参数是 5 和 7,它们都是整数类型。

由于 5 和 7 都是整数,Java 会选择匹配参数类型为整数的方法,即 int add(int a, int b)

因此,第一个调用 calculator.add(5, 7) 将返回 12。

在第二个调用中,我们传入的参数是 3.2 和 4.5,它们都是浮点数类型。

由于 3.2 和 4.5 都是浮点数,Java 会选择匹配参数类型为浮点数的方法,即 double add(double a, double b)

因此,第二个调用 calculator.add(3.2, 4.5) 将返回 7.7。

因此,运行这段代码将会输出:

12
7.7
Java 方法重载:解析 `add` 方法调用

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

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