Java模板——实现一个简易的计算器
在编程中,我们经常会遇到需要重复编写相同代码的情况,为了解决这个问题,我们可以使用模板,模板是一种预定义的代码结构,可以用于生成具有相似结构的代码,在Java中,我们可以使用泛型和抽象类来实现模板,本文将介绍如何使用Java模板实现一个简易的计算器。
我们需要创建一个抽象类Calculator,用于定义计算器的通用行为,在这个类中,我们将定义一个抽象方法calculate,用于执行计算操作,我们还需要定义两个泛型参数T和U,分别表示输入数据的类型和输出数据的类型。
public abstract class Calculator<T, U> {
public abstract U calculate(T input);
}
接下来,我们需要为不同类型的计算器创建子类,我们可以创建一个加法计算器AdditionCalculator和一个减法计算器SubtractionCalculator,这两个类都需要继承自Calculator类,并实现calculate方法。
public class AdditionCalculator extends Calculator<Integer, Integer> {
@Override
public Integer calculate(Integer input) {
return input + 1;
}
}
public class SubtractionCalculator extends Calculator<Integer, Integer> {
@Override
public Integer calculate(Integer input) {
return input - 1;
}
}
现在,我们可以使用这些计算器来执行计算操作,我们可以创建一个加法计算器对象,并使用它来计算两个整数的和:
public static void main(String[] args) {
AdditionCalculator addition = new AdditionCalculator();
int result = addition.calculate(5);
System.out.println("5 + 1 = " + result); // 输出:5 + 1 = 6
}
同样,我们也可以使用减法计算器来计算两个整数的差:
public static void main(String[] args) {
SubtractionCalculator subtraction = new SubtractionCalculator();
int result = subtraction.calculate(5);
System.out.println("5 - 1 = " + result); // 输出:5 - 1 = 4
}
通过这种方式,我们可以很容易地为其他类型的计算器创建子类,而无需重复编写相同的代码,这就是Java模板的强大之处。



还没有评论,来说两句吧...