Java--设计模式之简单工厂模式

来源:互联网 发布:mysql如何更改密码 编辑:程序博客网 时间:2024/06/04 18:59

简单工厂模式简而言之就是用一个类单独的来管理应该创建哪个类的实例

我们通过一个计算器的加减乘除的小例子加以说明,例子如下:

1、基类Operation,定义两个数和返回结果方法

public class Operation {private int num1;private int num2;public int getNum1() {return num1;}public void setNum1(int num1) {this.num1 = num1;}public int getNum2() {return num2;}public void setNum2(int num2) {this.num2 = num2;}public int result(){int result = 0 ;return result;}}

2、继承基类实现加法

public class OperationAdd extends Operation {@Overridepublic int result() {return getNum1()+getNum2();}}

3、继承基类实现减法

public class OperationSub extends Operation {@Overridepublic int result() {return getNum1()-getNum2();}}

4、继承基类实现乘法

public class OperationMul extends Operation{@Overridepublic int result() {return getNum1()*getNum2();}}

5、继承基类实现除法

public class OperationDiv extends Operation {@Overridepublic int result() {int num1 = getNum1();int num2 = getNum2();// 被除数不能为0if(num2==0){return 0;}return num1/num2;}}
6、测试

public class Test {public static void main(String[] args) {Operation operation = OperationFactory.operationCreate("-");operation.setNum1(10);operation.setNum2(50);System.out.println(operation.result());}}