课程设计-ATM柜员机模拟程序

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

软件学院课程设计报告书课程名称面向对象程序设计设计题目ATM柜员机模拟程序专业班级软件工程学号姓名指导教师刘腊梅2015年月目录1设计时间...........................................................................................................12设计目的...........................................................................................................13设计题目...........................................................................................................14设计任务...........................................................................................................15设计内容...........................................................................................................15.1kehu类代码...........................................................................................15.2ATM主界面模块设计..........................................................................25.3选择页面模块设计................................................................................55.4存款模块设计........................................................................................85.5取款模块设计......................................................................................115.6查询余额模块设计..............................................................................165.7修改密码模块设计..............................................................................186总结与展望.....................................................................................................23参考文献.............................................................................................................24成绩评定.............................................................................................................241设计时间2015年月2设计目的掌握图形用户界面设计方法,掌握常用swing组件的使用和事件处理程序设计.3设计题目ATM柜员机模拟程序4设计任务使用图形用户界面。当输入给定的卡号和密码(初始卡号和密码为123456)时,系统能登录ATM柜员机系统,用户可以按照以下规则进行:(1)查询余额功能:初始余额为10000元(2)ATM取款功能:每次取款金额为100的倍数,总额不超过5000元,支取金额不允许透支。(3)ATM存款功能:不能出现负存款。(4)修改密码:新密码长度不小于6位,不允许出现6位完全相同的情况,只有旧密码正确,新密码符合要求,且两次输入相同的情况下才可以成功修改密码。5设计内容5.1kehu类代码importjavax.swing.*;importjavax.swing.event.*;importjava.awt.*;importjava.awt.event.*;//导入包importjava.util.*;classkehu//定义客户类{Stringzh;//定义账号Stringpswf;//定义密码doublejine;//定义金额publickehu(){}//构造GUKEpublickehu(Stringzh,Stringpswf,doublejine){this.zh=zh;this.pswf=pswf;this.jine=jine;}Stringgetzh()//定义成员变量账号{returnzh;//成员方法}doublesetMima(doublepswf)//定义成员变量密码{returnpswf;//成员方法}doublegetJine()//定义成员变量金额{returnjine;//定义成员方法}voidcunkuan(doublemoney)//定义成员变量存款{jine=jine+money;//定义成员方法}voidquqian(doublemoney)//定义成员变量取款{jine=jine-money;//定义成员方法}Stringxiugaim(Stringmi)//定义成员变量密码{pswf=mi;//定义成员方法returnpswf;}}5.2ATM主界面模块设计classATMextendsJFrameimplementsActionListener//导入接口类{JPanelp1,p2,p3;//定义个面板JLabell1,l2,l3,l4;//定义个标签JPasswordFieldpswf;//定义一个密码文本JButtonjb1,jb2;//定义个按钮JTextFieldjtf1,jc1;//定义个文本框Containercontent;//定义一个容器kehu[]g=newkehu[4];//定义客户类数组publicATM()//布局{g[0]=newkehu(liuyiping,123456,10000);//客户类数组里给的帐号,密码,钱数g[1]=newkehu(chengyang,123456,10000);g[2]=newkehu(zhangzhicheng,123456,10000);g[3]=newkehu(pengzhanyuan,123456,10000);p1=newJPanel();p2=newJPanel();//定义第二个面板l2=newJLabel(卡号:);//定义标签l2jc1=newJTextField(10);//定义账号文本l3=newJLabel(密码:);//定义标签l3pswf=newJPasswordField(12);//定义密码文本l4=newJLabel(欢迎使用自动取款机);p1.add(l4);p2.add(l2);//把它们分别镶在面板上p2.add(jc1);p2.add(l3);p2.add(pswf);p3=newJPanel();//定义第三个面板jb1=newJButton(登录);//定义按钮登录jb1jb1.addActionListener(this);//jb1申请监听jb2=newJButton(注销);//定义按钮注销jb2jb2.addActionListener(this);//jb2申请监听p3.add(jb1);//把它们添加到p3面板里p3.add(jb2);content=this.getContentPane();//布局定义content.setLayout(newBorderLayout());content.add(p1,BorderLayout.NORTH);content.add(p2,BorderLayout.CENTER);//定义中部为面板p2content.add(p3,BorderLayout.SOUTH);//定义底部为面板p3this.pack();this.setTitle(ATM柜员机);//定义为窗口名称this.setBounds(300,300,400,300);//定义窗口的大小this.setResizable(false);this.show();//显示this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭、退出}publicvoidactionPerformed(ActionEvente)//监听类{Stringx=jc1.getText();if(e.getSource()==jb1)//如果点击是jb1按钮就进入For{for(inti=0;i4;i++)//判断名字在数组的位置if(x.equals(g[i].zh))//检查到开始判断是否匹配{if(pswf.getText().equals(g[i].pswf))//名字匹配成功后判断密码是否成功{newXUANZE(g[i]);//密码真确后进入XUANZE的界面}else{JOptionPane.showMessageDialog(this,密码错误!);//密码错误弹出提示密码错误}}}elseSystem.exit(0);//注销事件退出}publicstaticvoidmain(Stringargs[])//定义的MAIN,才能进入。{newATM();}}主界面密码输入错误提示栏5.3选择页面模块设计classXUANZEextendsJFrameimplementsActionListener//导入接口类{JPanelp2,p3;//定义个面板JLabell1;//定义个标签JButtonjb1,jb2,jb3,jb4,jb5;//定义个按钮Containercontent;//定义一个容器kehukey;//定义客户类传从参数keypublicXUANZE(GUKEkey){this.key=key;p2=newJPanel();//定义面板jb1=newJButton(ATM取款);//定义jb1按钮ATM取款jb1.addActionListener(this);//jb1申请监听jb2=newJButton(ATM存款);//定义jb2按钮ATM存款jb2.addActionListener(this);//jb2申请监听jb3=newJButton(查询余额);//定义jb3按钮查询余额jb3.addActionListener(this);//jb3申请监听jb4=newJButton(修改密码);//定义jb4按钮修改密码jb4.addActionListener(this);//jb4申请监听p2.add(jb1);p2.add(jb2);p2.add(jb3);p2.add(jb4);p3=newJPanel();//定义面板jb5=newJButton(退出);//定义jb5按钮退出jb5.addActionListener(//定义一个匿名类newActionListener(){publicvoidactionPerformed(ActionEventevent){System.exit(0);//退出登陆}});p3.add(jb5);content=t

1 / 27
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功