簡單工廠模式簡而言之就是用一個類單獨的來管理應該創建哪個類的實例
我們通過一個計算器的加減乘除的小例子加以說明,例子如下:
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());
}
}