用idea写一个工场模式计算器
时间: 2024-09-10 20:28:53 浏览: 53
工场模式是一种创建型设计模式,它提供了一种创建对象的最佳方式,而无需暴露其内部的创建逻辑。在这种场景下,我们可以使用 IntelliJ IDEA 创建一个简单的计算器工厂。首先,我们会定义一个接口 `Calculator` 和几个具体的实现类,如 `AddCalculator`、`SubtractCalculator` 等。然后,我们创建一个 `CalculatorFactory` 工厂类,它负责根据输入的运算类型返回相应的计算器。
以下是基本步骤:
1. **定义接口**:
```java
public interface Calculator {
double calculate(double a, double b);
}
```
2. **创建具体类**:
```java
public class AddCalculator implements Calculator {
@Override
public double calculate(double a, double b) {
return a + b;
}
}
public class SubtractCalculator implements Calculator {
@Override
public double calculate(double a, double b) {
return a - b;
}
}
```
3. **工厂类**:
```java
public class CalculatorFactory {
private static Map<String, Calculator> calculatorMap = new HashMap<>();
static {
calculatorMap.put("add", new AddCalculator());
calculatorMap.put("subtract", new SubtractCalculator());
}
public static Calculator getCalculator(String operation) {
return calculatorMap.get(operation.toLowerCase());
}
}
```
4. **使用工厂**:
```java
public class Main {
public static void main(String[] args) {
String operation = "add";
Calculator calculator = CalculatorFactory.getCalculator(operation);
if (calculator != null) {
double result = calculator.calculate(5, 3);
System.out.println("Result of " + operation + ": " + result);
} else {
System.out.println("Invalid operation");
}
}
}
```
阅读全文