简单工厂模式
来源:互联网 发布:以下哪件商品淘宝禁售 编辑:程序博客网 时间:2024/06/06 02:35
根据阅读《大话设计模式》,来说说自己对简单工厂模式的理解。把要产品的参数交给工厂而不关心工厂的生产过程,工厂根据产品类型交给对应的员工,由员工按照要求生产出产品的模式叫简单工厂模式。所以需要一个工厂类,一个操作类(员工),一个数据类。
具体代码如下
一、主函数()工厂类实例factory调用getResult方法、
public static void main(String[] args) {
// TODO Auto-generated method stub
OperatorFactory factory = new OperatorFactory();
double a = 2.3;
double b = 4.5;
System.out.println("2.3+4.5 = "+factory.getResult(a, b, "+"));
System.out.println("2.3-4.5 = "+factory.getResult(a, b, "-"));
System.out.println("2.3*4.5 = "+factory.getResult(a, b, "*"));
System.out.println("2.3%4.5 = "+factory.getResult(a, b, "%"));
}
二、工厂类调用操作类的方法
public double getResult(double numberA, double numberB, String opreator) {
double result = 0.0;
switch (opreator) {
case "+":
result = new OperatorAdd().getResult(numberA, numberB, opreator);
break;
case "-":
result = new OperatorSub().getResult(numberA, numberB, opreator);
break;
case "*":
result = new OperatorMul().getResult(numberA, numberB, opreator);
break;
case "%":
result = new OperatorDIv().getResult(numberA, numberB, opreator);
break;
}
return result;
}
三、操作类中的实现方法
public double getResult(double numberA, double numberB, String Opreator){
BigDecimal a = new BigDecimal(numberA);
BigDecimal b = new BigDecimal(numberB);
BigDecimal result = a.multiply(b);
return result.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();//将结果转换成保留俩位小数
}
四、数据类
public class Operator {
/**
* 作为计算器数据类(bean)
*/
private double numberA;
private double numberB;
private String Opreator;
public double getNumberA() {
return this.numberA;
}
public void setNumberA(double numberA) {
this.numberA = numberA;
}
public double getNumberB() {
return this.numberB;
}
public void setNumberB(int numberB) {
this.numberB = numberB;
}
public String getOpreator() {
return this.Opreator;
}
public void setOpreator(String Opreator) {
this.Opreator = Opreator;
}
}
- 工厂模式-简单工厂
- 工厂模式-简单工厂
- 工厂模式-简单工厂模式
- 工厂模式-简单工厂模式
- 简单工厂模式,工厂模式
- 工厂模式-简单工厂模式
- 简单工厂模式,工厂模式
- 简单工厂、工厂模式、抽象工厂模式
- 简单工厂、工厂模式、抽象工厂模式
- 简单工厂&工厂模式&抽象工厂模式
- 简单工厂和工厂模式
- 简单工厂和工厂模式
- 1,工厂模式--简单工厂
- 简单工厂和工厂模式
- 简单工厂,工厂模式,抽象工厂
- 简单工厂,工厂模式,抽象工厂
- 简单工厂、工厂方法、抽象工厂模式
- 简单工厂、工厂模式和抽象工厂
- 设计模式——单例模式(创建型模式)
- input输入提示历史记录
- CoordinatorLayout高级用法-自定义Behavior
- Java 数组练习题(1)
- 代码去注释正则匹配规则
- 简单工厂模式
- 图形界面编程(五) 布局容器类(4)
- Android 屏幕适配
- python实现socket通信
- LoRa点对点系统9 下载源代码与PC软件
- 创建小程序实例
- android 自定义View(二) 自定义属性和带滚动的View
- html实现选择select下拉里面的项就能跳转
- CentOS从php5.3升级到php5.5