用java实现简易工厂模式
时间: 2023-12-28 15:26:22 浏览: 74
java实现简单的工厂模式
以下是用Java实现简易工厂模式的示例代码:
```java
// 定义一个接口,表示计算器操作
interface Operation {
double calculate(double num1, double num2);
}
// 实现加法操作
class AddOperation implements Operation {
@Override
public double calculate(double num1, double num2) {
return num1 + num2;
}
}
// 实现减法操作
class SubtractOperation implements Operation {
@Override
public double calculate(double num1, double num2) {
return num1 - num2;
}
}
// 实现乘法操作
class MultiplyOperation implements Operation {
@Override
public double calculate(double num1, double num2) {
return num1 * num2;
}
}
// 实现除法操作
class DivideOperation implements Operation {
@Override
public double calculate(double num1, double num2) {
if (num2 == 0) {
throw new ArithmeticException("除数不能为0");
}
return num1 / num2;
}
}
// 简单工厂类,根据运算符创建相应的操作对象
class OperationFactory {
public static Operation createOperation(String operator) {
Operation operation = null;
switch (operator) {
case "+":
operation = new AddOperation();
break;
case "-":
operation = new SubtractOperation();
break;
case "*":
operation = new MultiplyOperation();
break;
case "/":
operation = new DivideOperation();
break;
}
return operation;
}
}
// 测试代码
public class Calculator {
public static void main(String[] args) {
double num1 = 10;
double num2 = 5; String operator = "+";
Operation operation = OperationFactory.createOperation(operator);
double result = operation.calculate(num1, num2);
System.out.println("计算结果:" + result);
}
}
```
在上述代码中:
1. 软件设计目标是实现一个简易计算器程序,可以进行加减乘除操作。
2. 在代码中,通过定义一个`Operation`接口表示计算器操作,然后分别实现加法、减法、乘法和除法的具体操作类。简单工厂类`OperationFactory`根据运算符创建相应的操作对象。在测试代码中,通过调用`OperationFactory.createOperation(operator)`方法创建相应的操作对象,并调用`calculate`方法进行计算,最后输出计算结果。
阅读全文