软件开发工具课程论文
更新时间:2024-06-29 17:27:01 阅读量: 综合文库 文档下载
- 软件开发工具课程设计心得推荐度:
- 相关推荐
学 号:
课 程 论 文
题 目 用Eclipse写个小程序 计算机科学与技术学院
学 院 班 级 姓 名 指导教师 张能立
2013 — 2014学年 第 1学期
武汉理工大学《软件开发工具》课程论文
目录
1.摘要——————————————————————1 2.关键字—————————————————————1 3.使用开发工具(Eclipse)简介 ——————————1 4.开发内容————————————————————2 5.程序设计说明——————————————————2 6.各个按钮的功能—————————————————2 7.源代码—————————————————————3 8.调试结果截图——————————————————7 9.总结体会————————————————————8 10.参考文献 ———————————————————8
武汉理工大学《软件开发工具》课程论文
1.摘要
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
2.关键字
Java Eclipse 简易运算器 3.使用开发工具(Eclipse)简介
Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java开发,但是目前亦有人通过插件使其作为其他计算机语言比如C++和Python的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。十分适用于学生进行简单的程序开发。 Eclipse优点 (1)灵活的插件结构
通常的软件必须通过重新编译的形式才能进行更改或扩充,而Eclipse通过使用插件机制,让我们可以动态地增加系统功能而无需修改系统代码,还能复用Eclilpse平台提供的众多扩展点。 (2)开放源代码
开放源代码不仅仅意味着免费,还使得Eclipse成为一个开放、自由的体系。 开放源代码鼓励创新,并激励开发人员为公共开放源码库贡献代码,为这个项目作贡献的开发人员越多,这个项目就会变得日益有用。另外,开放源代码还使得平台开发人员的学习曲线变得更平滑,因为Eclipse平台本身就包含了若干高品质的插件实现范例,是开发人员学习和模仿的对象。而由于Eclipse几乎是免费
1
武汉理工大学《软件开发工具》课程论文
的,而Microsoft公司的产品有很尴尬的盗版侵权问题,越来越多的公司的开发部门由Jbuilder转向了Eclipse,对于程序员而言,更让我们欣喜的是,Eclipse开放源代码,这意味着我们可以通过阅读顶级的Java源代码学习优雅,高效的编程。
(3)跨平台和优秀的用户体验
Eclipse是基于跨平台的程序语言Java开发的,这使得开发人员基于Eclipse开发的程序也可以方便地跨平台部署。
另外,Ecliplse通过引入SWT(Standard Widget Toolkit),使得开发出来的GUI程序效率更高,而且具备了与本地操作系统一致的外观和操作方式,大大改善了Java程序的用户体验。
4.开发内容
运用所学知识,使用Eclipse编写一个简易小程序,开发一个简易计算器,实现+,-,*,/,sqrt这些基本四则运算功能。
5.程序设计说明
(1)使用到java图形用户界面的组件和事件的java.swing和javax.swing包。 (2)构造方法Calculator()实现软件程序的界面,包括界面大小、显示位置、界面的个个组件按钮的位置、大小,以及按钮注册事件监听器。
(3)按钮的单击事件处理方法 actionPerformed(ActionEvent e)处理按钮的单击事件,当单击某个按钮时,就会产生相应的事件处理。
(4)方法operate()被actionPerformed(ActionEvent e)调用,用于具体处理计算符号对应的运算。
6.各个按钮的功能
“sqrt”——————————实现开方功能 “CE”———————————实现清除功能 “C” ———————————实现归零功能 “+/-” ——————————正负数转换功能 “1,2。。。。”————————基本数字键 “+,-,*,/ ”———————四则运算符号键 “.” ———————————小数点
2
武汉理工大学《软件开发工具》课程论文
7.源代码附录如下
import javax.swing.*; import java.awt.*;
import java.awt.event.*;
public class Calculator extends JFrame implements ActionListener{ private static final long serialVersionUID = 8199443193151152362L; private JButton
bto_s=new JButton(\bto_ce=new JButton(\bto_7=new JButton(\bto_9=new JButton(\bto_4=new JButton(\
bto_6=new JButton(\bto_1=new JButton(\bto_3=new JButton(\bto_0=new JButton(\bto_deng=new JButton(\JButton button[]= {
bto_s,bto_zf,bto_ce,bto_c,bto_7,
bto_8,bto_9,bto_chu,bto_4,bto_5, bto_6,bto_cheng,bto_1,bto_2,bto_3, bto_jian,bto_0,bto_dian,bto_deng,bto_jia };
private JTextField text_double;// = new JTextField(\private String operator = \当前运算的运算符
private boolean firstDigit = true; // 标志用户按的是否是整个表达式的第一个数字,或者是运算符后的第一个数字
private double resultNum = 0.0; // 计算的中间结果
private boolean operateValidFlag = true; //判断操作是否合法 public Calculator() {
super(\软件1101 熊强\
this.setBounds(300, 300, 300, 300); this.setResizable(false);
this.setBackground(Color.orange);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.getContentPane().setLayout(new BorderLayout());//设置布局
3
武汉理工大学《软件开发工具》课程论文
text_double=new JTextField(\设置文本区
text_double.setHorizontalAlignment(JTextField.RIGHT);//设置水平对齐方式未右对齐
this.getContentPane().add(text_double,BorderLayout.NORTH);//将文本区添加到Content北部
JPanel panel=new JPanel(new GridLayout(5,4));//在内容窗口添加一个网格布局
this.getContentPane().add(panel);//添加panel面板 for(int i=0;i for(int i=0;i button[i].addActionListener(this);//为按钮注册 text_double.setEditable(false);//文本框不可编辑 text_double.addActionListener(this); this.setVisible(true); } public void actionPerformed(ActionEvent e) { String c= e.getActionCommand();//返回与此动作相关的命令字符串。 if(c.equals(\ handleC(); //用户按了“C”键 } else if (c.equals(\ // 用户按了\键 { text_double.setText(\ } else if (\用户按了数字键或者小数点键 { handleNumber(c); // handlezero(zero); } else //用户按了运算符键 { handleOperator(c); } } private void handleC() // 初始化计算器的各种值 { text_double.setText(\ firstDigit = true; 4 武汉理工大学《软件开发工具》课程论文 operator = \ } private void handleNumber(String button) { if (firstDigit)//输入的第一个数字 { text_double.setText(button); } else if ((button.equals(\输入的是小数点,并且之前没有小数点,则将小数点附在结果文本框的后面 //如果字符串参数作为一个子字符串在此对象中出现,则返回第一个这种子字符串的第一个字符的索引;如果它不作为一个子字符串出现,则返回 -1 { text_double.setText(text_double.getText() + \ } else if (!button.equals(\ 如果输入的不是小数点,则将数字附在结果文本框的后面 { text_double.setText(text_double.getText() + button); } // 以后输入的肯定不是第一个数字了 firstDigit = false; } private void handleOperator(String button) { if (operator.equals(\// 除法运算 // 如果当前结果文本框中的值等于0 if (getNumberFromText() == 0.0){ // 操作不合法 operateValidFlag = false; text_double.setText(\除数不能为零\ } else { resultNum /= getNumberFromText(); } } else if (operator.equals(\// 加法运算 resultNum += getNumberFromText(); } else if (operator.equals(\// 减法运算 resultNum -= getNumberFromText(); } else if (operator.equals(\ 5 武汉理工大学《软件开发工具》课程论文 // 乘法运算 resultNum *= getNumberFromText(); } else if (operator.equals(\// 平方根运算 if(getNumberFromText()<0){ operateValidFlag = false; text_double.setText(\被开方数不能为负数\ else resultNum = Math.sqrt(resultNum); } else if (operator.equals(\// 正数负数运算 resultNum = resultNum * (-1); } else if (operator.equals(\// 赋值运算 resultNum = getNumberFromText(); } if (operateValidFlag) { // 双精度浮点数的运算 long t1; double t2; t1 = (long) resultNum; t2 = resultNum - t1; if (t2 == 0) { text_double.setText(String.valueOf(t1)); } else { text_double.setText(String.valueOf(resultNum)); } } operator = button; //运算符等于用户按的按钮 firstDigit = true; operateValidFlag = true; } private double getNumberFromText() //从结果的文本框获取数字 { double result = 0; try { result = Double.valueOf(text_double.getText()).doubleValue(); // ValueOf() 6 武汉理工大学《软件开发工具》课程论文 返回表示指定的 double 值的 Double 实例 } catch (NumberFormatException e){ } return result; } public static void main(final String[] args) { new Calculator(); } } 8.调试结果截图 (1)加法运算:956+358 (3)乘法运算:556*637 2)减法运算:1628-703 4)除法运算:372/48 7(( 武汉理工大学《软件开发工具》课程论文 9.总结体会 任何工作都没有懈怠的理由,看似简单的运算器程序,编译起来确是另一番滋味,需要注意界面的设计,按钮的构造,算法的编程,精度的把握,每一个方面都需要仔细认真的去思考,去实践。失败挫折是难免的,这时需要的就是永不放弃的精神,个人力量有限,但群体的力量强大,所以难免需要请教他人,查阅资料,在此基础上再加上勤加思考,勇于实践,最后终于成功完成计算器程序。这个过程,对于我来说获益匪浅。 参考文献 [1] 李文新、郭炜、余华山. 程序设计导引及实践[M]. 北京:清华大学出版社 [2] 史斌星、史佳. 新编Java实用教程[M]. 北京:清华大学出版社 [3] 辛运帏 饶一梅 张钧. Java程序设计[M]. 北京:清华大学出版社 [4] 李大卓 刘海. Eclipse核心编程[M]. 北京:清华大学出版社 8
正在阅读:
软件开发工具课程论文06-29
c语言课程设计学生成绩管理系统04-18
垃圾箱的自述作文600字07-01
当班长的酸甜苦辣作文800字07-12
健康养生会馆项目实施策划方案12-24
第四章光的折射练习题10-01
建筑材料习题答案 - 图文06-27
高级工程师答辩题库03-29
高速公路隧道施工方案03-21
城市规划专业术语解析05-06
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 课程论文
- 开发工具
- 软件
- 黄鑫体育课题计划
- CPU提金 - 图文
- 五年级上册数学第一、二单元测试题一
- 在数学教学过程中提高学生的反思能力
- 海底捞差异化战略
- 文化旅游艺术中心建设项目可行性研究报告(立项案例) - 图文
- 福建省晋江市永春县第一中学高一化学下学期期末考试试题
- 幼儿教育学外国教育家及教育思想
- 第一学期期中质量抽测
- 重庆科创学院举行重庆理文造纸机电维修班结业典礼 - 图文
- 幼儿园个案追踪记录
- 初中化学知识点《化学计算》《化学方程式的计算》精品专题课后练
- 无线维护-华为-L1
- 高三基础知识天天练化学4-4-2人教版
- 印度环境基本法及其实施中的司法能动(精)
- 《铁路客运专线技术管理办法(试行)》铁科技〔2009〕212号
- 湘教工委通〔2010〕36号 - 图文
- 选修三 专题一 题组训练大冲关
- 广告学期末复习题(1)
- 水电安装施工阶段监理细则