b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

简单工厂模式_简单工厂模式的实现_优化方法(2)

电脑杂谈  发布时间:2016-12-27 20:01:25  来源:网络整理

四个运算类:

/**
 * 加法类,继承父类Operation
 * 
 * @author maiyu
 * 
 */
public class NumberAdd extends Operation {
	@Override
	public double getResult() {
		// 假如某一天公司老板要求在乘法增加一个开根号,即可只需要改动这里
		// double result = Math.sqrt(getNumberA() + getNumberB());
		double result = getNumberA() + getNumberB();
		return result;
	}
}

/**
 * 减法类,继承父类Operation
 * 
 * @author maiyu
 * 
 */
public class NumberSub extends Operation {
	@Override
	public double getResult() {
		double result = getNumberA() - getNumberB();
		return result;
	}
}
/**
 * 乘法类,继承父类Operation
 * 
 * @author maiyu
 * 
 */

public class NumberMul extends Operation {
	@Override
	public double getResult() {
		double result = getNumberA() * getNumberB();
		return result;
	}
}

/**
 * 除法类,继承父类Operation
 * 
 * @author maiyu
 * 
 */
public class NumberDiv extends Operation {
	@Override
	public double getResult() {
		double result = 0d;
		if (getNumberB() != 0) {
			result = getNumberA() / getNumberB();
		} else {
			try {
				throw new Exception("除数不能为0");
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			// System.out.println("除数不能为0!");
			// System.out.println("以下结果是错误的!");
		}
		return result;
	}

}

客户端:Program

import java.util.Scanner;
/**
 * 客户端
 * @author maiyu
 *
 */
public class Program {
	public static void main(String[] args) {
		try {
			// 输入端
			Scanner scanner = new Scanner(System.in);
			System.out.println("请输入数字A : ");
			String numberA = scanner.next();
			System.out.println("请输入操作符(+,-,*,/):");
			String numberOperation = scanner.next();
			System.out.println("请输入数字B : ");
			String numberB = scanner.next();

			// 在这里调用格式工厂的方法
			Operation oper;
			oper = OperationFactory.createOperate(numberOperation);
			oper.numberA = Double.parseDouble(numberA);
			oper.numberB = Double.parseDouble(numberB);
			double numberResult = oper.getResult();
			// 打印结果
			System.out.println("输出结果为:" + numberResult);

		} catch (Exception e) {
			System.out.println("您的输入有误:");
			e.printStackTrace();
		}
	}

}
输出:


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-23612-2.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...