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

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

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

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 {
	@Override
	public int result() {
		return getNum1()+getNum2();
	}
}

3、继承基类实现减法

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

4、继承基类实现乘法

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

5、继承基类实现除法

public class OperationDiv extends Operation {
	@Override
	public int result() {
		int num1 = getNum1();
		int num2 = getNum2();
		// 被除数不能为0
		if(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());
	}
}

你可能感兴趣的:(java,设计模式,简单工厂模式,计算器)