小编Hen*_*ues的帖子

当我们改变一个方法的实现时,我们是否必须重新编译依赖类?

假设 TaxCalculator 类中有以下方法:

public double calculateTax(double income) {
    return income * 0.3;
}
Run Code Online (Sandbox Code Playgroud)

我们在 Main 类中使用这个方法,如下所示:

var calculator = new TaxCalculator();
double tax = calculator.calculateTax(100_000);
System.out.println(tax);
Run Code Online (Sandbox Code Playgroud)

如果我将该方法的实现更改calculateTax为:

public double calculateTax(double income) {
    return income * 0.4;
}
Run Code Online (Sandbox Code Playgroud)

我是否需要重新编译 TaxCalculator 类和 Main 类?

我知道这个问题听起来很愚蠢,但我在一次讲座中听说,如果我们不使用接口,我们在紧耦合代码中所做的每一个更改(就像我上面展示的那样)都会迫使我们重新编译所有依赖的类在课堂上我们做出了改变。

这对我来说听起来很奇怪,因为 Main 类不知道我们所做的更改的方法的实现。

预先感谢您的任何帮助!

java coupling interface

0
推荐指数
1
解决办法
202
查看次数

标签 统计

coupling ×1

interface ×1

java ×1