工厂模式实验.doc

工厂模式实验.doc

ID:58631936

大小:55.00 KB

页数:7页

时间:2020-10-17

工厂模式实验.doc_第1页
工厂模式实验.doc_第2页
工厂模式实验.doc_第3页
工厂模式实验.doc_第4页
工厂模式实验.doc_第5页
资源描述:

《工厂模式实验.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、青岛理工大学课程实验报告课程名称软件设计与体系结构班级实验日期2016.05.06姓名学号实验成绩实验名称工厂模式实验实验目的及要求(1)熟悉工厂模式(简单工厂模式、工厂方法模式、抽象工厂模式)的核心思想。(2)掌握利用反射技术改进工厂模式的编程方法;实验环境Win7,VS2010实验内容1.利用简单工厂模式实现四则运算程序(1)实现抽象的运算类(2)实现加减乘除运算子类(3)实现运算工厂2.利用反射技术改写工厂类(1)创建配置文件,存储目前使用的运算符;(2)使用反射技术根据配置文件的内容创建运算对象。算法描述及实验步骤1、创建控制台程序2、编

2、写使用简单工厂模式实现四则运算程序3、运行调试程序4、创建配置文件存储运算符5、使用反射技术根据配置文件的内容创建运算对象6、运行调试程序调试过程及实验结果使用反射技术前使用反射技术后总结通过这次实验,我掌握了使用简单工厂模式编写四则运算程序,并能够通过反射技术改写工厂类。此次实验较为简单,主要考察面向对象部分,只在C#部分由于自己长时间未用有些淡忘,一些地方通过上网查资料并对比老师的代码才将程序写得完整。附录客户端usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;using

3、System.Text;namespaceConsoleApplication2{classProgram{staticvoidMain(string[]args){try{Console.Write("请输入第一个数:");stringstrNumberOne=Console.ReadLine();Console.Write("请输入运算符:");stringstrOperate=Console.ReadLine();Console.Write("请输入第二个数:");stringstrNumberTwo=Console.ReadLine();

4、Operationoperate=OperationFactory.GetOperation(strOperate);operate.NumberOne=Convert.ToDouble(strNumberOne);operate.NumberTwo=Convert.ToDouble(strNumberTwo);doubleresult=operate.getResult();Console.WriteLine(strNumberOne+strOperate+strNumberTwo+"="+result);Console.ReadLine();

5、}catch(Exceptionex){Console.WriteLine("您输入的数据有错误!"+ex.ToString());Console.ReadLine();}}}}抽象运算类usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceConsoleApplication2{classOperation{privatedoublenumberOne=0;privatedoublenumberTwo=0;publicdoub

6、leNumberOne{get{returnnumberOne;}set{numberOne=value;}}publicdoubleNumberTwo{get{returnnumberTwo;}set{numberTwo=value;}}publicvirtualdoublegetResult(){return0;}}}加法类usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceConsoleApplication2{clas

7、sOperationAdd:Operation{publicoverridedoublegetResult(){doubleresult=0;result=NumberOne+NumberTwo;returnresult;}}}减法类usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceConsoleApplication2{classOperationSub:Operation{publicoverridedoublegetR

8、esult(){doubleresult=0;result=NumberOne-NumberTwo;returnresult;}}}乘法

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。