简单工程模式--计算机
2015-08-07 19:25
330 查看
---运算类class Operator{ private double _numberA=0; private double _numberB=0; public double NumberA { get{return _numberA;} set{_numberA=value; } } public double NumberB { get{return _numberB;} set{_numberB=value; } } public virtual double GetResult() { double
result=0; return result; }}---加法类class OperatorAdd:Operator{ public override double GetResult() { return NumberB+NumberA; } }---减法类class OperatorSub:Operator{ public override double GetResult() { return NumberA-NumberB; } }---乘法类class OperatorMul:Operator{
public override double GetResult() { return NumberB*NumberA; } }---除法类class OperatorDiv:Operator{ public override double GetResult() { if(NumberB==0) { throw Exception("除数不能为0"); } return NumberA/NumberB; } }--简单工厂类public class OperatorFactory{ public static
Operator GetOperator(string operatorflag) { Operator oper=null; switch(operatorflag) { case '+':new OperatorAdd();break; case '-':new OperatorSub();break; case '*':new OperatorMul();break; case '/':new OperatorDiv();break; } return oper; }}---客户端调用Operator
oper=OperatorFactory.GetOperator(+);oper.NumberA=2;oper.NumberB=3;double result=oper.Getresult();
result=0; return result; }}---加法类class OperatorAdd:Operator{ public override double GetResult() { return NumberB+NumberA; } }---减法类class OperatorSub:Operator{ public override double GetResult() { return NumberA-NumberB; } }---乘法类class OperatorMul:Operator{
public override double GetResult() { return NumberB*NumberA; } }---除法类class OperatorDiv:Operator{ public override double GetResult() { if(NumberB==0) { throw Exception("除数不能为0"); } return NumberA/NumberB; } }--简单工厂类public class OperatorFactory{ public static
Operator GetOperator(string operatorflag) { Operator oper=null; switch(operatorflag) { case '+':new OperatorAdd();break; case '-':new OperatorSub();break; case '*':new OperatorMul();break; case '/':new OperatorDiv();break; } return oper; }}---客户端调用Operator
oper=OperatorFactory.GetOperator(+);oper.NumberA=2;oper.NumberB=3;double result=oper.Getresult();
相关文章推荐
- Android 网络学习之获取服务器的图片
- 网络超时设置connectionTimeout和SoTimeout的区别
- HTTP状态码
- TCP/IP协议三次握手
- Webbench-http压力测试
- 【暑假】[实用数据结构]UVa11235 Frequent values
- 客户端无法tcp连接上本地虚拟机的问题(最后是linux防火墙问题)
- 黑马程序员--Java网络编程
- http://my.oschina.net/lenglingx/blog/205269
- pip install lxml因网络问题失败
- iOS开发网络篇—NSURLConnection基本使用
- 【C】利用单链表数据结构实现通讯录,链表的增删改查
- Java模块 -- Http发送post数据文件,服务端Servlet接收,保存至本地
- HDU 5001 Walk (2014年鞍山赛区网络赛E题)
- caffe 网络结构几个部分简单介绍
- 蛋疼的中文编码及其计算机编码历史
- 三、网络---上面板---调试面板
- C/C++手动构造ARP包并发送至网络
- hdu 4043 2011北京赛区网络赛D 概率+大数 **
- 【Apache学习】httpd2.4 版本下 https配置