




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java程程序序设设计计课课程程设设计计报报告告(2011-2012年度第年度第1学期学期)计算器计算器专业专业计算机科学与技术(网络工程)计算机科学与技术(网络工程)学生姓名学生姓名赵宝文赵宝文班级班级B计算机计算机102学号学号1010704227指导教师指导教师徐徐森森完成日期完成日期2012年年1月月8日日计算器目目录录目录.21概述.11.1课程设计目的.11.2课程设计内容.12系统需求分析.12.1系统目标.12.2主体功能.12.3开发环境.13系统概要设计.13.1系统的功能模块划分.13.2系统流程图.24系统详细设计.24.1COMPUTERPAD(主类).24.2NUMBERBUTTON.24.3OPERATIONBUTTON.35测试.35.1测试方案.35.2测试结果.46小结.4参考文献.5附录.6附录源程序清单.6附录源程序清单.14附录源程序清单.14Java程序设计课程设计报告(2011)1题目题目1概述1.1课程设计目的1.熟悉Java的运行环境及其使用;2.掌握Java图形界面的使用;3.加强Java程序的分析能力;4.加强使用Java知识解决实际问题的能力。1.2课程设计内容设计GUI界面的计算器程序,用户可以通过鼠标依次输入参加计算的数值,进行加、减、乘、除等混合运算。2系统需求分析2.1系统目标要求所设计的GUI界面计算器是一个使用很方便的程序,能进行加、减、乘、除等混合运算。2.2主体功能用户可以通过鼠标依次输入参加计算的数值,进行加、减、乘、除等混合运算。2.3开发环境Eclipse集成开发环境3系统概要设计3.1系统的功能模块划分本计算机文件共有3个java源文件。类之间的主要关系如下图所示ComputerPad(主类主类)NumberButtonOperationButtonComputerPad.java该java源文件生成的类负责创建计算器的“主窗口”。该类含有main方法,整个程序从该类开始执行。计算器2NumberButton.java该文件生成的类负责为主类创建数字按钮对象,使用鼠标单击数字按钮可依次输入参加运算的数值的各位数字。OperationButton.java该文件生成的类负责为主类创建运算符号按钮对象。使用鼠标单击运算符号按钮可选择所要进行的运算。Java程序设计课程设计报告(2011)33.2系统流程图开始初始化变量按键选项。是否为0。当前是否有运算符。当前是否有运算符。退格当前编辑的数据。初始化所有变量。计算当前运算符,并显示。显示当前编辑的数据。计算当前运算符,并显示。根据当前运算符计算结果。当前编辑数据是否为0。当前编辑数据是否为0。当前编辑的数字后加0继续?当前数据后加一位。当前数据用键值代替数字键运算符键符号键清除键退格键是否是否是否是否是否是结束否计算器44系统详细设计4.1ComputerPad(主类)成员变量成员变量描述变量类型名称数字按钮数组NumberButtonnumberButton运算符号按钮数组OperationButtonoperationButton小数点按钮Button小数点按钮正负号按钮Button正负号按钮退格按钮Button退格按钮求倒数按钮Button求倒数按钮等号按钮Button等号按钮清零按钮Button清零按钮显示计算结果JTextFieldresultShow存储数据的链表LinkedList链表方法名称功能备注ComputerPad创建窗口构造方法ActionPered处理ActionEvent事件接口方法Main程序运行入口代码见附录。4.2NumberButton成员变量成员变量描述变量类型名称按钮代表的数字Intnumber方法名称功能备注NumberButton创建数字按钮构造方法getNumber获取按钮代表的数字代码见附录。Java程序设计课程设计报告(2011)54.3OperationButton成员变量成员变量描述变量类型名称按钮代表的数字StringOperator方法名称功能备注OperationButton创建符号按钮构造方法getOperator获取按钮代表的符号代码见附录。5测试5.1测试方案图5-15.1.1加法测试:1+2=?图5-1-1计算器65.1.2乘法测试:23=?图5-1-25.2测试结果加法测试结果:1+2=图5-2-1乘法测试结果:23=图5-2-26小结本文利用Java语言编写了一个计算器程序,其中涉及到很多的基础内容,如类、构造方法、继承、接口、GUI等。通过对这些内容的综合运用,加深了对Java的理解,为进一步学习打下基础。Java程序设计课程设计报告(2011)7参考文献参考文献1耿祥义张跃平.Java2实用教程(第三版)M.北京:清华大学出版社,20062耿祥义.Java课程设计(第三版)M.北京:清华大学出版社,20043张跃平.Java2实用教程实验指导与习题解答(第三版)M.北京:清华大学出版社,20044JacquieBarker,Java面向对象编程指南,电子工业出版社,2001计算器8附附录录附录源程序清单importjava.awt.importjava.awt.event.importjavax.swing.importjavax.swing.border.importjava.util.LinkedListpublicclassComputerPadextendsFrameimplementsActionListenerNumberButtonnumberButton数字按钮数组。OperationButtonoperationButton运算符号按钮数组。Button小数点按钮正负号按钮退格按钮求倒数按钮等号按钮清零按钮Panelpanel添加各种按钮的面板。JTextFieldresultShow显示计算结果的文本条。String运算符号=+-LinkedList链表负责存储数据的链表。boolean是否按下等号=falsepublicComputerPad()super(计算器)链表=newLinkedList()numberButton=newNumberButton10共有10个数字按钮。for(inti=0i=1)num=num.substring(0num.length()-1)链表.set(2num)resultShow.setText(num)else链表.removeLast()resultShow.setText(0)elseif(e.getSource()=正负号按钮)if(链表.size()=1)Stringnumber1=(String)链表.getFirst()trydoubled=Double.parseDouble(number1)d=-1dStringstr=String.valueOf(d)链表.set(0str)resultShow.setText(str)catch(Exceptionee)Java程序设计课程设计报告(2011)15elseif(链表.size()=3)Stringnumber2=(String)链表.getFirst()trydoubled=Double.parseDouble(number2)d=-1dStringstr=String.valueOf(d)链表.set(2str)resultShow.setText(str)catch(Exceptionee)elseif(e.getSource()=求倒数按钮)if(链表.size()=1|链表.size()=2)Stringnumber1=(String)链表.getFirst()trydoubled=Double.parseDouble(number1)d=1.0dStringstr=String.valueOf(d)链表.set(0str)resultShow.setText(str)catch(Exceptionee)elseif(链表.size()=3)Stringnumber2=(String)链表.getFirst()trydoubled=Double.parseDouble(number2)d=1.0dStringstr=String.valueOf(d)链表.set(0str)resultShow.setText(str)catch(Exceptionee)计算器16elseif(e.getSource()=清零按钮)是否按下等号=falseresultShow.setText(0)链表.clear()publicstaticvoidmain(Stringargs)newComputerPad()附录源程序清单importjava.awt.publicclassNumberButtonextendsButtonintnumberpublicNumberButton(intnumber)super(+number)this.number=numbersetForeground(Color.blue)publicintgetNumber()returnnumber附录源程序清单
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 信息系统项目需求分析与功能设计指南
- A5技术课堂导入操作指南
- 基于大数据的个性化治疗方案优化-洞察及研究
- 国际化视野下的竞争-洞察及研究
- 基于用户行为分析的网络舆情情感倾向判定-洞察及研究
- 一年级学生期末评价表模板
- 档案资料的长期保存方法-洞察及研究
- 熔炉设备状态监测与故障诊断-洞察及研究
- 六年级数学专项计算题训练方案
- 个人房租减免申请书规范模板
- T-BECS 0006-2025 城镇重要基础设施内涝防护规划设计规范
- 运动会进行课件
- 2025年煤矿企业主要负责人安全生产理论考试笔试试题含答案
- 污水厂设备更新改造工程可行性研究报告
- 2025年河南省事业单位面向哈密市和十三师新星市少数民族高校毕业生专项招聘15名考试参考题库及答案解析
- 苗族舞蹈课件
- 2025年全国企业员工全面质量管理知识竞赛题及参考答案
- 中学“全员德育导师制”实施方案报告书
- 移动加权平均法自动计算表
- AutoLISP基础入门案例,很受用
- 波浪观测方法
评论
0/150
提交评论