预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共12页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Java实验报告 题目:简易计算器 学院数学与计算机学院 学科门类工学 专业软件工程 学号2010434004 姓名 指导教师 2012年12月25日 一、实验目的 通过Java程序开发实训使学生掌握《面向对象程序设计(Java)》课堂讲授的内容,灵活运用到Java程序的开发与设计中。 1.了解Java中的类与对象,类及成员的定义 2.掌握运算符与基本的表达式,和异常的处理 3.数组与字符串的应用 4.掌握常用的Java系统类,核心语言包(java.lang),工具包(java.util),数学包(java.math) 5.接口的实现,输入输出的处理和可视化程序设计 二、实验要求 应用Java语言,设计一个简易计算器,要求界面简洁,能完成基本运算功能。 三、实验内容 进行图形界面设计 应用JFrame类、JPanel类、5种布局管理器、文本框、标签及按钮等。 实现计算器的基本功能 包括加减乘除四则运算、倒数、取余、平方根、三角函数及清除结果等功能。 四、设计方案 1、设计流程图 2、界面的设计:Swing布局。 界面设计中有用到swing组件的TextField和Button,用到awt中的BorderLayout和GridLayout布局管理方式。 设计主界面框架布局为默认的BorderLayout布局,申请三个面板分别是: (1)输入输出面板,布局设置为两行一列的网格GridLayout布局,包括两个JTextField文本框,一个负责显示当前输入信息,一个负责显示计算式。面板设置为面板的上部,即f.add(inputPanel,BorderLayout.NORTH); (2)数字按钮及运算按钮面板,设置为4行5列的网格布局,包括0~9的10个数字和加、减、乘、除、乘方、开方、取倒、取余、等于按钮。面板位置在主界面的下部,即f.add(buttonsPanel,BorderLayout.SOUTH); (3)功能键面板,包括三角函数,清除,退格等按钮。面板位置在主界面框架的中部。即f.add(operationPanel,BorderLayout.CENTER)。 其图形界面如下: 3、数据输入:鼠标事件响应。 分别定义三个类,一个是NumberMouseListener类来响应数字点击事件,另外一个是CalcMouseListener类来响应包括开方、乘方在内的运算按钮的点击事件,最后是OperationMouseListener类用来响应退格、清除等功能键的点击事件,三个类都分别实现鼠标监听MouseListener接口。对每个按钮设置对应监听。 4、数据处理:整型和浮点数处理,计算器的核心功能实现。 在CalcMouseListener类中对根据事件源的分析,完成用户要求的运算,将结果输出到文本框中。 五、实验结果 1、四则运算功能 2、扩张的其他运算功能 六、程序代码 publicclassCalculator{ //计算器面板 privateJFramef=newJFrame("Calculator"); privateJPanelinputPanel=newJPanel();//输入面扳 privateJPaneloperationPanel=newJPanel();//加减乘除面板 privateJPanelbuttonsPanel=newJPanel();//数字面板 privateJTextFieldinput=newJTextField(20);//输入数据文本框 privateJTextFieldshow=newJTextField(20); privateJButtonbackspace=newJButton("退格");//退格键 privateJButtonCE=newJButton("CE");//清空 privateJButtonC=newJButton("C");//删除 privateJButtonsqrt=newJButton("√");//开方 privateJButtonfang=newJButton("^");//乘方 privateJButtonmod=newJButton("%");//取余 privateJButtondao=newJButton("1/x");//取倒数 privateJButtonsin=newJButton("sin"); privateJButtoncos=newJButton("cos"); privateJButtonlg=newJButton("ln"); //四则运算符号键 privateJButtonadd=newJButton("+");