JAVA课程设计报告格式.docx
- 文档编号:25072624
- 上传时间:2023-06-04
- 格式:DOCX
- 页数:9
- 大小:91.84KB
JAVA课程设计报告格式.docx
《JAVA课程设计报告格式.docx》由会员分享,可在线阅读,更多相关《JAVA课程设计报告格式.docx(9页珍藏版)》请在冰豆网上搜索。
JAVA课程设计报告格式
JAVA课程设计报告
题目:
计算器的设计与实现
专业:
大
班级:
傻
学号:
逼
姓名:
何志伟
指导教师:
段新娥
日期:
山西工程技术学院
课程设计评阅书
题目:
计算器的设计与实现
信息 系 计算机科学与技术 专业姓名 何志伟
设计时间:
2016年 月 日~201年 月 日
评阅意见:
成绩:
指导教师:
(签字)
职 务:
201年 月 日
《JAVA语言》课程设计题目
摘要
计算器是一种很常用的计算工具,它在计算方面、日常生活中给我们提供很大的方便,在编辑此程序时,除了包括常用的加法运算算法、减法运算算法、乘法运算算法、除法运算算法等四大模块之外。
还特意添加了阶乘、正弦、余弦和指数运算。
其次程序按照要求利用AWT、swing图形界面技术进行windows系统迷你计算器的模拟设计,用到的接口、对象、类等方法,同时对编程过程中所编写的实验代码也不同程度的进行细化的要求,所以在编程的过程中难免遇到了一些困难,所以在完成本次系统的过程中过程中充满了挑战与机遇。
关键词:
AWT、swing、类、接口
第一章开发背景
1.1设计目的和意义
随着网络的时代的到来,java语言在网络编程方面的优势使得网络编程有了更好的选择。
Java语言最大的特点是具有跨平台性,使其不受平台不同的影响,得到了广泛的应用本课程是Java面向对象程序设计,体现的是面向对象而不是面向过程,它与面向过程有很大的区别,它避免了面向过程中很多容易出错的内容,例如:
指针等,在面向对象的设计中,注意体现的是面向对象的几大机制,继承、封装、多态和抽象,在面向过程的设计中的多继承Java采用了接口来代替实现。
本次课程设计,主要是图形界面设计,熟悉java.awt包中的组件,掌握图形界面设计方法,理解委托事件处理模型。
从而检测对这门课的掌握情况,有助于及时查漏补缺。
1.2设计内容
具体内容:
计算器可以进行简单的四则运算(加、减、乘、除),还可以进行(八进制,十进制,十六进制)之间的相互转换,内容可以清除。
在window或DOS下直接运行即可,按钮为灰色,界面协调。
第二章课程设计的软、硬件环境
2.1课程设计软件环境
程序运行在jdk1.6.0_10。
第3章系统分析·(主要功能描述,模块分析)
以下为标准计算器的基本功能:
(1)加法
两个数据进行加操作,可以为小数。
(2)减法
两个数据进行减操作,可以为负数相减。
(3)乘法
两个数相乘操作。
(4)除法
两个数相除操作。
(5)开平方
对任意一个数进行开方运算,可以是小数。
(6)转换
进行十进制数、二进制以及十六进制数之间的转换。
第4章系统设计(系统总框架图、流程图)
系统流程图如下:
图4.1系统流程图
第五章比较有特色的函数
(1)控件变量:
JMenu //定义菜单 JMenuItem //菜单中项的实现
JMenuBar //菜单栏的实现。
将 JMenu 对象添加到菜单栏以构造菜单。
JRadioButtonMenuItem //选中一个的时候,禁用另外一个取消选中的时候,释放禁用的那一个
JTextField //JTextField是一个显示用户输入输出的文本区域。
JPanel //JPanel 作为一个容器,可以包容一些组件,然后将这个 JPanel 对象作为一个组件添加到另一个容器 (称作父容器) 中。
JToggleButton //用于记录内存中是否存在用户保存的数据信息。
JButton //是用户进行计算时主要的使用工具,一般为其添加actionPerformed事件。
(2)其它变量
private double data_One; //用来存储运算的数据 private double data_Two; //用来存储运算的数据 private char Operator='A'; //存放运算符 private boolean pointIsTyped=false; //判断输入的数据是否是小数
private int memoryi; //存储内存中的整数数据 private double memoryd; //存储内存中的小数数据
第六章设计总结(存在的不足与对策)
这次的程序设计,从一个简单的计算器就可以看出JAVA的程序设计不是那么简单,仅仅是一个小小的计算器,就已经有很多需要注意的问题,一不小心就会出错,还会有很多地方没怎么明白,而计算器的设计是最简单的几个设计其中之一,可见,平时的知识积累是很重要的。
没有知识的积累,再简单的东西也不可能设计出来。
课程设计还让我们练习了动手能力,使我们平时学习的知识得以在实际中应用,不会学死书,活学活用,很大程度上提高了我们的能力,对以后的学习、工作、生活也会有一定的帮助。
第七章参考文献
[1]曲朝阳,杨杰明等.Java程序设计. 北京:
清华大学出版社,2008.10
[2]耿祥以,张跃平.Java大学生实用教程. 北京:
电子工业出版社,2012.6
[3]明日科技.Java经典编程.北京:
清华大学出版社,2012.10
[4]李尊朝,苏军.Java语言程序设计.北京:
中国铁道出版社,2004.2
[5]高宏静,从入门到精通.北京工业出版社
第八章源程序代码
import java.awt.*;
import java.awt.event.*;
public class Counter extends Frame implements ActionListener { /** * */
private static final long serialVersionUID = 1L; TextField t=new TextField(""); Panel p1=new Panel(); Panel p2=new Panel();
Button[] b=new Button[14]; Button bAdd=new Button("加"); Button bSub=new Button("减"); Button bMul=new Button("乘以"); Button bPoint=new Button("."); Button bDiv=new Button("除以"); Button bEqual=new Button("等于"); Button bSqrt=new Button("开方"); Button bPow=new Button("平方");
Button bBinary=new Button("二进制"); Button bOctal=new Button("八进制"); Button bHex=new Button("十六进制"); Button bNull=new Button("清除"); String str1="";
String str2="";
String operator=null; boolean first=true; int countOper=0; double result=0.0;
double num1=0.0,num2=0.0; boolean error=false; public Counter() {
super("计算器 河南理工大学计算机学院 网络工程(信息安全方向)12-1班 姜鹏");
t.setEditable(false); for(int i=0;i<10;i++) {
b[i]=new Button(String.valueOf(i)); p1.add(b[i]);
b[i].setActionCommand("number"); b[i].addActionListener(this); }
p1.add(bPoint);
bPoint.setActionCommand("number"); p1.add(bAdd); p1.add(bSub);
p1.add(bMul); p1.add(bDiv); p1.add(bEqual); p2.add(bSqrt); p2.add(bPow); p2.add(bBinary); p2.add(bOctal); p2.add(bHex); p2.add(bNull);
bAdd.setActionCommand("oper"); bSub.setActionCommand("oper"); bMul.setActionCommand("oper"); bDiv.setActionCommand("oper"); bAdd.addActionListener(this); bSub.addActionListener(this); bMul.addActionListener(this); bDiv.addActionListener(this); bPoint.addActionListener(this); bEqual.addActionListener(this); bPow.addActionListener(this); bSqrt.addActionListener(this);
bBinary.addActionListener(this); bOctal.addActionListener(this); bHex.addActionListener(this); bNull.addActionListener(this);
p1.setLayout(new GridLayout(4,4,5,5)); p2.setLayout(new GridLayout(1,6,5,5)); add(t,"North"); add(p1,"Center"); add(p2,"South");
setLocation(600,300); setSize(600,300);
setBackground(new Color(200,20,100)); setVisible(true);
addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e) {
System.exit(0); } }); }
public void actionPerformed(ActionEvent e) {
Button temp=(Button)e.getSource();
if(e.getActionCommand().equals("number")) {
if(first) {
str1=str1+temp.getLabel(); t.setText(str1); } else {
str2=str2+temp.getLabel(); t.setText(str2); } }
else if(e.getActionCommand().equals("oper")) {
if(str1=="") {
countOper=0; first=true; } else
{
countOper++; if(countOper>1) {
getResult(); }
operator=temp.getLabel(); first=false; } }
else if(e.getActionCommand().equals("开方")) {
double d=Math.sqrt(Double.parseDouble(str1)); str1=String.valueOf(d);
t.setText(String.valueOf(d)); first=false; }
else if(e.getActionCommand().equals("平方")) {
double f=Math.pow(Double.parseDouble(str1),2); str1=String.valueOf(f);
t.setText(String.valueOf(f)); first=false; }
else if(e.getActionCommand().equals("二进制")) {
int i=Integer.parseInt(str1);
String binStr=Long.toBinaryString(i); str1=binStr;
t.setText(str1); first=false; }
else if(e.getActionCommand().equals("八进制")) {
int i=Integer.parseInt(str1);
String octStr=Long.toOctalString(i); str1=octStr;
t.setText(str1); first=false; }
else if(e.getActionCommand().equals("十六进制")) {
int i=Integer.parseInt(str1);
String hexStr=Long.toHexString(i);
str1=hexStr;
t.setText(str1); first=false; }
else if(e.getActionCommand().equals("清除")) {
str1="";//清空 str2="";
t.setText(""); countOper=0; first=true; error=false; }
else if(e.getActionCommand().equals("等于")) {
if((str1=="")||(str2=="")) {
countOper=0; first=true; } else {
getResult(); countOper=0; } } }
public void getResult() {
num1=Double.parseDouble(str1); num2=Double.parseDouble(str2); if(operator.equals("加")) {
result=num1+num2; }
else if(operator.equals("减")) {
result=num1-num2; }
else if(operator.equals("乘以")) {
result=num1*num2; }
else if(operator.equals("除以"))
{
if(num2==0.0) {
error=true; } else {
result=num1/num2; } }
if(error) {
t.setText("error"); } else {
t.setText(String.valueOf(result)); str1=String.valueOf(result); str2=""; } }
public static void main(String[] args) {
new Counter();
}
}
注意:
必须按以上格式排版,正文中除“第一章、第二章。
。
。
。
”标题居中外,其余各段首行缩进两个字符。
(不符合要求的,不给通过)16周周一前交。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 课程设计 报告 格式