欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    实验报告附源代码(Java程序设计)(共21页).doc

    • 资源ID:14141252       资源大小:3.81MB        全文页数:21页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    实验报告附源代码(Java程序设计)(共21页).doc

    精选优质文档-倾情为你奉上计算机系课程大作业实验报告实验项目名称 银行ATM系统的设计与实现 所属课程名称 Java程序设计 实 验 类 型 综合设计 姓 名 提交时间 2012-5-10 班级学号 成 绩 计算机实验室实验概述:【实验目的】 学习使用JAVA技术设计与实现软件的基本过程和技术。通过实现,巩固JAVA基础知识,掌握在实践中解决问题的方法,提升JAVA实践编程能力。【实验环境】(使用的软件) Eclipse 开发环境,office Word 软件。实验内容(不够附页):【实验方案设计与实验过程】题目:银行业务ATM设计与实现处理简单帐户存取款、查询。要求:模拟ATM的界面,用户能取款、查询、存款。数据存放在文件中。 (界面、具体功能自定)涉及:界面设计、文件输入输出流读、写。系统需求分析1 、功能需求分析本ATM柜员机的主要功能如下所述:要求使用图形用户界面。当输入给定的卡号和密码(卡号为和密码为)时,系统能登录ATM柜员机系统,用户可以按照以下规则进行:查询余额:初始余额为0元,存款后余额为本金加利息。ATM存款:每次存款金额为100的倍数,总额不超过5000元,金额不为负数。ATM取款:每次取款金额为100的倍数,总额不超过5000元,金额不允许透支。查询利率:可查询利率。2 、其他需求分析(1)性能描述实时性好、灵活性强、易于不同年龄阶段的人操作。(2)设计约束能实现用户所定义的各项需求。系统设计1、总体设计我所设计的ATM柜员机主要是由登录页面模块还由选择服务模块组成,其中选择服务模块又由取款模块、查询余额模块、修改密码模块、退卡模块组成。其功能结构图如下所示:登陆界面模块选择服务模块查询余额模块存款模块取款模块查询利率模块退出模块图1 ATM功能结构示意图2、ATM柜员机界面设计我觉得一个系统的界面应该要简单明了,当然样式美观就更好了。我设计的界面主要是由窗体组成,操作简单。而每一个窗口则执行相应的功能。一个系统界面的好坏直接影响到用户的操作,界面设计要求样式美观、简单明了、方便易操作。我设计的界面主要分为窗体、菜单、文本输入框几个部分,分别执行相应的操作。(1)窗体的主要结构的设计我所设计的窗口的主要结构的特点就是每个窗口都对应着一个特定的功能。比如说报错,还有各种查询余额、存款、取款、查询利率、选择服务等功能,所以它们都是由各种选择和文本框组成的。所以整个设计就趋向简单化了。(2)各功能模块设计1 登陆页面模块设计与ATM柜员机打交道比较多的,也是大家对安全比较关心的问题:密码。所以第一个界面就是要输入密码和卡号才能继续服务。我定义了文本框累的对象cardNum, password。判断输入的密码和卡号是否正确,如果不正确的话,则弹出密码或卡号错误的警告框,并用break跳出窗口,返回登陆界面。此模块相应的部分源代码为:str1=JOptionPane.showInputDialog("账号:"+"n");/输入个人信息 cardNum1=Integer.parseInt(str1); str2=JOptionPane.showInputDialog("密码:"+"n");/输入个人信息 password1=Integer.parseInt(str2); if(cardNum1=cardNum)&&(password1=password) break; else if(cardNum1!=cardNum)|(password1!=password) JOptionPane.showMessageDialog(null,"错误!请重输"); str1=JOptionPane.showInputDialog("账号:"+"n");/读入数据 cardNum1=Integer.parseInt(str1); str2=JOptionPane.showInputDialog("密码:"+"n");/读入数据 password1=Integer.parseInt(str2); if(cardNum1!=cardNum)&&(password1!=password) JOptionPane.showMessageDialog(null,"两次输入错误!请退出!"+"n"+"卡被吞!"); System.exit(0); else System.exit(0); else System.exit(0); 2 选择服务模块设计在选择服务模块中,有各种ATM的服务功能,只要用户在该界面中选择,它就会弹出各个相应的界面。主要代码如下:String inputChoise = JOptionPane.showInputDialog ( "t请输入您选择的项目代号:n" +"tt 1 查询余额n" +"tt 2 存款n" +"tt 3 取款n" +"tt 4 利率n" +"tt 5 退出" );choise = Integer.parseInt( inputChoise );3 查询余额模块设计在查询余额模块中,会出现一个显示所剩余额的对话框。余额是由本金和利息的和。主要代码如下:cash= cash + cash * rate;JOptionPane.showMessageDialog( null,"您的余额: " + cash );break; 4 存款模块设计在存款模块中,和其他的界面是同样的结构。也是有一个文本框和选择组成的。用户在文本框中输入他想存的数额,但是必须是100的倍数,而且每一次最多只能存5000块。否则就会弹出报错的窗口。主要代码如下:String in = JOptionPane.showInputDialog( "请在空白框内输入金额!n"+"您要存款的金额是:" );money = Integer.parseInt( in );if(money>0)&&(money%100=0)cash=cash+money;JOptionPane.showMessageDialog(null,"存款成功!");JOptionPane.showMessageDialog(null,"您的余额是:"+cash);elseJOptionPane.showMessageDialog(null,"您的输入金额非法!请重输->>>");try FileWriter fw = new FileWriter( "d:atm.txt ",true); PrintWriter out = new PrintWriter(fw); out.println("存款: "+money); out.close(); fw.close(); catch (IOException e) System.out.println( "Write file error! "); e.printStackTrace(); break;5 取款模块设计在取款模块中,和存款界面是同样的结构。也是有一个文本框和按钮组成的。用户在文本框中输入他想取的数额,但是必须是100的倍数,而且每一次最多只能取5000块。当然了取款的时候也不能超过卡里的余额,再就是卡里的余额不可以为负,否则就会弹出报错的窗口。主要代码如下:String out = JOptionPane.showInputDialog( "请在空白框内输入金额!n"+"您要取款的金额是:" );money = Integer.parseInt( out );if(money>0)&&(money%100=0)cash=cash-money;JOptionPane.showMessageDialog(null,"取款成功!");JOptionPane.showMessageDialog(null,"您的余额是:"+cash);JOptionPane.showMessageDialog(null,"请取回卡!");if(money%100=0)&&(money<=5000)&&(money>=0) cash = cash - money; JOptionPane.showMessageDialog(null,"您的余额是:"+cash); if(money>0) JOptionPane.showMessageDialog(null,"请取回现金!"); else JOptionPane.showMessageDialog(null,"您的输入金额非法!请重输->>>"); str3= JOptionPane.showInputDialog("请输入金额:"+"n");/读入数据 money=Integer.parseInt(str3); if(money%100=0)&&(money<=5000)&&(money>=0) cash=cash-money; JOptionPane.showMessageDialog(null,"您的余额是:"+cash); if(money>0) JOptionPane.showMessageDialog(null,"请取回现金!"); else JOptionPane.showMessageDialog(null,"卡被吞!"); try clock.sleep(2000); catch(InterruptedException ie) System.err.println("Thread error:"+ie); try FileWriter fw = new FileWriter( "d:atm.txt ",true); PrintWriter ou = new PrintWriter(fw); ou.println("取款: "+money); ou.close(); fw.close(); catch (IOException e) System.out.println( "Write file error! "); e.printStackTrace(); break;6 退卡模块设计在退卡模块设计中,这个方法就更加的简单了,它只是用了System.exit(0);7 查询利率设计 用户可查询利率,利率可在程序中修改,但不允许用户自己修改。JOptionPane.showMessageDialog(null,"您的利率是: " + rate);8 文件设计存取款记录都可以在文件中体现。存款记录只要代码如下:try FileWriter fw = new FileWriter( "d:atm.txt ",true); PrintWriter out = new PrintWriter(fw); out.println("存款: "+money); out.close(); fw.close(); catch (IOException e) System.out.println( "Write file error! "); e.printStackTrace(); 取款代码与存款相似。实验步骤、测试数据及实验结果1登陆界面(1)输入正确的帐号和密码 (2)输入密码错误 如上再次输入错误,则出现如下界面。程序被退出。2登陆正确进入选择界面3 输入选项1,出现查询余额界面4输入选项2,出现存款界面(1)如输入不是整百的金额则不能存入金额 (2)输入整百的金额则存入 5存入金额后,查询余额为本金加利息6输入选项3,出现取款界面(1)如输入不是整百的金额则不能取款 (2)输入整百的金额则取款成功 7输入选项4,出现利率界面8输入选项5,出现退出界面9记录文件内容【实验小结】出错原因分析在此次课程设计中,我遇到了一些问题1对于java语言了解不够透彻,运用到实际的软件开发中存在着困难,只学习到了一些最基本的知识,这导致编写程序时经常出现一些语法错误。经细心修改终于将程序改正完成。2在短时间内用Java语言来设计一个具体的系统是一个较大的挑战。主要是对于正规开发一个系统的流程不熟悉,适应起来比较慢,编写各个模块相对应的操作时,自己感觉难以动手,这表明所学的知识不能灵活运用到实际中。只能大量阅读相关的书籍,对于书上以及网站上下载的资料中的Java实例加强理解,还有就是多跟精通此方面的老师和同学交流,取其精华。3在加入文件的时候,文件中只能存放一行数据且每次记录都覆盖上次的纪录,竟跟同学反复讨论后,终于将文件记录成功。4在判断输入的帐号和密码是否与原帐号和密码一致时,我原本想用数组将每一位数字都一一比较,但后来发现用整型变量就可以了,而且比数组简便多了,定义语句如下: int cardNum = ;/信用卡号 int password = ;/密码比较语句如下:(cardNum1=cardNum)&&(password1=password)心得体会这次作业让我对于实际动手能力与系统开发的流程的有了很大的提升,让我了解到进行软件的开发必须多进行实际的练习与操作,才能有进步。在这作业我主要学会了运用Java语言设计界面、输入文本等,学会了综合运用Java语言。这次作业内容主要是运用JAVA语言来编写一个ARM银行程序,由于以前学的不是很扎实,而且还有些知识我们都是没有学过的,这就要求我们去查相关的书籍,还有就是和同学之间的交流。正因为这样,才锻炼了我的自学的能力,还有就是加深了我对各个知识点的认识,并且提高了我对专业的学习的兴趣,为我以后的学习打下了基础。在这个过程当中,我学到了很多的知识,同时也感谢我的同学的帮助和指导。在以后的学习当中,我会更加努力的学习好专业知识,并将所学的知识用于实践当中去,以便牢固掌握知识。附:/Cash.javaimport java.io.FileWriter;import java.io.IOException;import java.io.PrintWriter;import javax.swing.*;public class Cash public static void main( String args ) int cardNum1 = 1; int password1 = 1; int cardNum = ;/信用卡号 int password = ;/密码 String str1 = "" String str2 = "" String str3 = "" Thread clock=null; double cash = 0; int money = 0; int i = 1; double rate = 0.0023;do str1=JOptionPane.showInputDialog("账号:"+"n");/输入个人信息 cardNum1=Integer.parseInt(str1); str2=JOptionPane.showInputDialog("密码:"+"n");/输入个人信息 password1=Integer.parseInt(str2); if(cardNum1=cardNum)&&(password1=password) break; else if(cardNum1!=cardNum)|(password1!=password) JOptionPane.showMessageDialog(null,"错误!请重输"); str1=JOptionPane.showInputDialog("账号:"+"n");/读入数据 cardNum1=Integer.parseInt(str1); str2=JOptionPane.showInputDialog("密码:"+"n");/读入数据 password1=Integer.parseInt(str2); if(cardNum1!=cardNum)&&(password1!=password) JOptionPane.showMessageDialog(null,"两次输入错误!请退出!"+"n"+"卡被吞!"); System.exit(0); else System.exit(0); else System.exit(0); while( i>0 );int choise; while( i=1 )doString inputChoise = JOptionPane.showInputDialog ( "t请输入您选择的项目代号:n" +"tt 1 查询余额n" +"tt 2 存款n" +"tt 3 取款n" +"tt 4 利率n" +"tt 5 退出" );choise = Integer.parseInt( inputChoise ); switch( choise )case 1 :cash= cash + cash * rate;JOptionPane.showMessageDialog( null,"您的余额: " + cash );break;case 2 : String in = JOptionPane.showInputDialog( "请在空白框内输入金额!n"+"您要存款的金额是:" );money = Integer.parseInt( in );if(money>0)&&(money%100=0)cash=cash+money;JOptionPane.showMessageDialog(null,"存款成功!");JOptionPane.showMessageDialog(null,"您的余额是:"+cash);elseJOptionPane.showMessageDialog(null,"您的输入金额非法!请重输->>>");try FileWriter fw = new FileWriter( "d:atm.txt ",true); PrintWriter out = new PrintWriter(fw); out.println("存款: "+money); out.close(); fw.close(); catch (IOException e) System.out.println( "Write file error! "); e.printStackTrace(); break;case 3 : String out = JOptionPane.showInputDialog( "请在空白框内输入金额!n"+"您要取款的金额是:" );money = Integer.parseInt( out );if(money>0)&&(money%100=0)cash=cash-money;JOptionPane.showMessageDialog(null,"取款成功!");JOptionPane.showMessageDialog(null,"您的余额是:"+cash);JOptionPane.showMessageDialog(null,"请取回卡!");if(money%100=0)&&(money<=5000)&&(money>=0) cash = cash - money; JOptionPane.showMessageDialog(null,"您的余额是:"+cash); if(money>0) JOptionPane.showMessageDialog(null,"请取回现金!"); else JOptionPane.showMessageDialog(null,"您的输入金额非法!请重输->>>"); str3= JOptionPane.showInputDialog("请输入金额:"+"n");/读入数据 money=Integer.parseInt(str3); if(money%100=0)&&(money<=5000)&&(money>=0) cash=cash-money; JOptionPane.showMessageDialog(null,"您的余额是:"+cash); if(money>0) JOptionPane.showMessageDialog(null,"请取回现金!"); else JOptionPane.showMessageDialog(null,"卡被吞!"); try clock.sleep(2000); catch(InterruptedException ie) System.err.println("Thread error:"+ie); try FileWriter fw = new FileWriter( "d:atm.txt ",true); PrintWriter ou = new PrintWriter(fw); ou.println("取款: "+money); ou.close(); fw.close(); catch (IOException e) System.out.println( "Write file error! "); e.printStackTrace(); break;case 4 : JOptionPane.showMessageDialog(null,"您的利率是: " + rate);break;case 5 :JOptionPane.showMessageDialog( null, "谢谢使用!" ); System.exit(0);while( choise<1 | choise>5 );System.exit(0);评语: 批阅日期:专心-专注-专业

    注意事项

    本文(实验报告附源代码(Java程序设计)(共21页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开