class Calculator {
public float add(float a, float b) {
return a + b
}
public float subtract(float a, float b) {
return a — b
}
}
我们像下面这样使用这个类:
Calculator calculator = new Calculator()
float sum = calculator.add(10, 2) //the value of sum is 12
float diff = calculator.subtract(10, 2) //the value of diff is 8
class Addition implements Operation {
public float compute(float a, float b) {
return a + b
}
}
class Subtraction implements Operation {
public float compute(float a, float b) {
return a — b
}
}
class Calculator {
public float calculate(float a, float b, Operation operation) {
return operation.compute(a, b)
}
}
我们将像下面这样使用我们的新类:
Calculator calculator = new Calculator()
Addition addition = new Addition()
Subtraction subtraction = new Subtraction()
float sum = calculator.calculate(10, 2, addition) //the value of sum is 12
float diff = calculator.calculate(10, 2, subtraction) //the value of diff is 8
现在如果我们需要添加乘法,我们将创建这样的一个乘法运算类:
class Multiplication implements Operation {
public float compute(float a, float b) {
return a * b
}
}
然后通过添加以下内容在上面的示例中使用它:
Multiplication multiplication = new Multiplication()
float prod = calculator.calculate(10, 2, multiplication) // the value of prod is 20