JAVA程序设计.docx
- 文档编号:9028314
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:12
- 大小:66.62KB
JAVA程序设计.docx
《JAVA程序设计.docx》由会员分享,可在线阅读,更多相关《JAVA程序设计.docx(12页珍藏版)》请在冰豆网上搜索。
JAVA程序设计
信息科学与工程学院
课程设计任务书
题目:
简单计算器
学号:
201112220130201112220149
姓名:
庞伟朱久丽
年级:
2011级专科一班
专业:
计算机应用技术
课程:
JAVA语言程序设计
指导教师:
刘梦琳职称:
老师
完成时间:
2012-12-24
课程设计任务书及成绩评定
课程设计的任务和具体要求
1.课程设计任务:
设计一个图形界面(GUI)的计算器应用程序,完成简单的算术运算。
通过对计算器的编辑来检测和提升自己的java编程能力,并最终完成课程设计报告!
2.课程设计要求:
(1)应用自己所学课程知识完成对计算器的基本任务。
(2)查阅相关资料,学习和掌握项目中涉及的新知识,提高自学能力。
(3)通过应用java程序编写计算器来提升自己对简单的图形界面有一定的掌握和了解。
指导教师签字:
日期:
指导教师评语:
成绩:
指导教师签字:
日期:
目录
一、需求分析5
二、设计思路6
三、详细设计7
四、运行调试与分析讨论12
五、设计体会与小结14
六、参考文献15
一、需求分析
设计的计算器可以完成加法、减法、乘法、除法的简单运算。
二、设计思路
1.界面设计:
(如图)
图3-1
2.设计思路:
根据所设计出来的界面,首先要设计其GUI界面,总体界面有一个文本框,16个按钮.总体界面用BorderLayout布局,文本框放置在最NORTH,然后0到9以及+,-,*,/等按钮放置到一个面板Panel中,完成界面设计。
三、详细设计
1.程序流程图:
2.所用代码展示
importjava.awt.*;
importjava.awt.event.*;
importjava.applet.*;
publicclassCalculatorextendsApplet
implementsActionListener
{
//弹出窗口
privateCalFramecalFrame=newCalFrame();
publicvoidinit()
{
//弹出的按钮
ButtoncalBtn=newButton("打开计算器");
calBtn.addActionListener(this);
add(calBtn);
}
publicvoidactionPerformed(ActionEvente)
{
//弹出窗口没有被显示,则显示,否则关闭
if(calFrame.isVisible())
calFrame.setVisible(true);
else
calFrame.setVisible(true);
}
privatevoidjbInit()throwsException{
}
classCalFrameextendsFrameimplementsActionListener
{
privateTextFielddisplay=null;
privatedoublearg1=0;
privateStringBufferarg2=newStringBuffer();
privatecharop='=';
publicCalFrame()
{
setTitle("计算器");
setSize(250,250);
setLayout(newBorderLayout(5,5));//采用边界布局
//菜单
MenuBarmb=newMenuBar();
MenumEdit=newMenu("编辑");
MenuItemmCopy=newMenuItem("复制");
mCopy.addActionListener(calFrame);//此时对象?
?
MenuItemmPaste=newMenuItem("粘贴");
mPaste.addActionListener(calFrame);
mEdit.add(mCopy);
mEdit.add(mPaste);
MenumSearch=newMenu("查找");
MenuItemmQuit=newMenuItem("退出");
mCopy.addActionListener(calFrame);
mSearch.add(mQuit);
MenumHelp=newMenu("帮助");
MenuItemmAbout=newMenuItem("关于");
mAbout.addActionListener(calFrame);
mHelp.add(mAbout);
setMenuBar(mb);
setVisible(true);
//输出窗口
display=newTextField("结果显示");
display.setEditable(false);
add(display,"North");
//数字按键面版
Panelkeypad=newPanel();
keypad.setLayout(newGridLayout(4,4));
//添加数字和运算符按键
Stringkeys="789/456*123-0.=+";
for(inti=0;i { Buttonbtn=newButton(keys.substring(i,i+1)); keypad.add(btn); //为按键添加事件监听器 btn.addActionListener(this); add(keypad,"Center"); } publicvoidactionPerformed(ActionEvente) { //响应按键,如果是数字则连接到StringBuffer中, //如果是运算符则进行运算。 Stringkey=e.getActionCommand(); charc=key.charAt(0); if((c>='0'&&c<='9'||c=='.'|| (c=='-'&&arg2.length()==0))) { arg2.append(c); display.setText(arg2.toString()); } else { calculator(Double.parseDouble(arg2.toString())); op=c; arg2.setLength(0); if(c=='=') arg2.append(arg1); }; } publicvoidcalculator(doublearg2) { //计算 switch(op) { case'+': arg1+=arg2;break; case'-': arg1-=arg2;break; case'*': arg1*=arg2;break; case'/': arg1/=arg2;break; case'=': arg1=arg2;break; default: break; } display.setText(""+arg1); 四、运行调试与分析讨论 1.简单的运算: (以加法为例: 123+456) 分析: 计算的结果为579.0,为双精度型。 2.正负号的运算: (以-123为例) 分析: 输出的结果如图所示,正负号添加能够很好的实现。 5.总体分析: 该计算器基本运算没有问题,正负号能很好的实现,总体能完成一个计算器的基本功能,但仍有许多地方需要改进,比如清零的实现所存在的一些问题,虽然在基本的运算过程当中不会造成太大影响,但这依然不能认为是一个很完美的计算器 六、设计体会与小结 本次课程设计到此算是告一段落了,经过这次的学习,我们学到了很多东西,在此基础上更加巩固了自己对java的认识与了解。 此次课程设计让我们更了解熟悉了Java中的图形用户界面和它的编程方式。 在完成课题的过程中也不断充实了自己,学习到了很多以前没有学习到的知识,收获很大。 最大的收获就是对大学学习的总结和培养了解决困难的信心和能力,对所学知识能够融会贯通,又不断丰富了新知识。 Java计算器设计使得我们对所学的专业课有了更为深刻的认识,使得知识得到了巩固和提高。 在接下来的时间里,我们要更加努力的往深一层次的方面看齐,了解更多有关java的知识,对java有更深一步的了解,继续加油! 课程设计所需软件、硬件等 软件: eclipse 硬件: 计算机 课程设计进度计划 起止日期工作内容备注 2012-12-21至对简易计算器进行设计思路 分析,根据分析进行详细设 2012-12-24计,然后编译程序,进行调 试,分析讨论 参考文献、资料索引(序号、文献名称、编著者、出版单位) 参考文献 [1]丁振凡.Java语言实用教程(第2版)[M].北京邮电大学出版社.2008.1 [2]丁振凡.Java语言实用教程实验指导(第2版)[M].北京邮电大学出版社.2008.1 [3]杨树林等.Java语言最新实用案例教程(第2版)[M].清华大学出版社.2010.7
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 程序设计
![提示](https://static.bdocx.com/images/bang_tan.gif)