1、点使用组件构建的C/S应用程序各项功能的组织合理搭配应用图标控制功能实现技术重构建基于C/S架构的应用程序Swing组件应用项目打包方法应用难Swing组件的应用事件监听器的使用异常处理一、项目需求 计算器在人们的生活中处处可见,人们的生活已经离不开便捷的计算器。本次实训项目计算器实现如下功能:(1)计算机主界面包含了计算机的0910个数字按钮,“+”、“-”、“”、“”简单的四则运算符号,另外本项目还增加了一个求倒数算法,表达符号为:“1/x”。(2)功能介绍 数字按钮:向计算器传递数字消息,09数字信息 算术运算按钮:向计算器传递“+”、“-”、“”运算信息,进行计算功能的判断和实现。 其
2、他按钮:小数点按钮 -将整形的09数字转化为浮点型数字,用于精确计算。正负号按钮 将数字转化为正、负形式。退格按钮 -清楚当前屏幕显示数字中的数值,从后向前清除。求倒数按钮 计算当前数字的倒数。等号按钮 -计算表达式的值。清零按钮 -清除当前屏幕数字信息,符号为“C”。二、项目设计在设计记事本系统中包含了3个Java源文件:ComputerPad.java、NumberButton.java、OperationButton.java其中ComputerPad.java中包含了程序的的入口main()方法。下面是3个源文件实现的各个功能介绍:(1) ComputerPad.java源文件(pub
3、lic 主类)ComputerPad类继承了Frame类,并实现了事件监听的接口。在该public类中定义了计算器需要的图形界面,框架,按钮等成员数据(成员属性)。ComputerPad类中定义的成员方法有ComputerPad() 构造器,初始化计算器界面。重写了接口ActionListener的方法actonPerformed(ActionEvent e),对计算器的按钮实现监听控制。Main()方法,计算器程序启动的入口。(2) NumberButton.java源文件NumberButton类设置了计算器的数字按钮为blue颜色。(3) OperationButton.java源文件O
4、perationButton类设置了计算器的操纵按钮(运算符号)等为red颜色。程序的入口ComputerPad主类,其中的成员对象和成员方法如下所示:1)成员对象 NumberButton numberButton;数字数组,存放09数组 OperationButton oprationButton;操纵按钮数组,运算符号等 Button xsdb,zfb,tgb,dsb,db,qlb; 小数点按钮,正负号按钮,退格按钮, 求倒数按钮,等号按钮,清零按钮。 Panel panel;框架 JTextField resultShow;文本域,计算器的显示的文本信息 String ysf=+,-*
5、/; LinkedList lb; boolean adh=false;2)成员方法public ComputerPad () 是无参构造方法,在构造方法中实现了计算器界面的初始化操作。Public void actionPreformed(actionEvent e)是接口ActionListener的事件监听方法。public static void main(String args)是main 主方法,在主方法中通过无参构造方法ComputerPad()实例化了计算器。3)代码package jsq;import java.awt.*;import java.awt.event.*;im
6、port javax.swing.*;import javax.swing.border.*;import java.util.LinkedList;import java.text.NumberFormat;public class ComputerPad extends Frame implements ActionListener NumberButton numberButton; Button xsdb,zfb,tgb, dsb,db,qlb; boolean adh=false; public ComputerPad() super(计算器); lb=new LinkedList(
7、); numberButton=new NumberButton10; for(int i=0;i=1) num=num.substring(0,num.length()-1); lb.set(0,num); resultShow.setText(num);0 num=num.substring(0,num.length()-1); lb.set(2,num); else if(e.getSource()=zfb) double d=Double.parseDouble(number1); d=-1*d; String str=String.valueOf(d); lb.set(0,str);
8、 resultShow.setText(str); double d=Double.parseDouble(number2); lb.set(2,str); else if(e.getSource()=dsb) if(lb.size()=1|lb.size()=2) d=1.0/d; else if(e.getSource()=qlb) public static void main(String args) new ComputerPad();4)计算器使用效果图图1 计算器图三、项目总结通过这次实训,增加了我学习Java技术的兴趣,虽然还不明确软件技术包含的具体内容,但从java语言这门课
9、程开始,已发现程序设计的乐趣,在学习java语言的过程中也学到了许多计算机应用基础知识,对计算机的机体也有了一个大体的了解。这次实训是老师给了范例程序,经过自己的改写,实现要求。先做简单框架,一步步的再做其它子框架,在实际操作过程中犯的一些错误还会有意外的收获,感觉实训很有意思。在具体操作中对这学期所学的java语言的理论知识得到巩固,达到实训的基本目的,也发现自己的不足之出,在以后的上机中应更加注意,同时体会到java语言具有的语句简洁,使用灵活,执行效率高等特点。四、心得体会这次实习,与我而言收获颇丰,它不仅让我认识到自己的不足所在和以后努力的方向。还让我进一步理解面向对象程序设计的基本概念,掌握程序设计的基本方法和技巧,灵活的使用包,进一步的理解接口,熟练的掌握在接口中对事件的实现。深入理解和灵活运用面向对象程序设计的基本特性,培养良好的程序设计风格,提高抽象思维、逻辑思维的能力。我很庆幸能在这样有限的时间里,在这么和谐的气氛中学习,和同学们一起相处,我也努力向他们学习,不懂就问,认真完成老师交给我的每一项任务。他们也都尽力帮助我,给我讲授Java相关的编程知识,耐心解答我的疑难困惑,帮助我尽快达到了实训的目的,再次感谢我的指导老师及各位同学对我的无私帮助。
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2