1、java课程设计软 件 学 院课程设计报告书课程名称 面向对象程序课程设计 设计题目 ATM柜员机模拟程序 专业班级 学 号 姓 名 指导教师 2014年 6月目录1设计时间.22设计目的.23设计题目.24设计任务.25设计内容.25.1需求分析.25.1.1问题描述.25.1.2基本要求.25.2总体设计.25.2.1 类的描述.25.2.2类之间的关系.45.3详细设计.45.3.1类图.45.3.2页面设计.56测试与分析.57程序设计.68总结与展望.12参考文献.13课程设计成绩评定 .131.设计时间2014年6月 16日至2014年6月 20日2 设计目的面向对象程序设计课程设
2、计是软件工程专业集中实践性环节之一,是学习完java6程序设计课程后进行的一次全面的综合练习。其目的在于加深对java基础理论和基本知识的理解,掌握使用java进行软件设计的基本方法,提高解决实际问题的能力,最终实现对于给定的应用要求,设计出满足要求的程序,使之满足各种用户的应用需求(信息要求和处理要求)。同时,此次设计对于同学将来的毕业设计和具体工作实践将有重要的意义。3 设计题目ATM柜员机模拟程序4设计任务 要求:使用图形用户界面。当输入给定的卡号和密码(初始卡号和密码为123456)时,系统能登录ATM柜员机系统,用户可以查询余额,取款,存款,修改密码。5 设计内容5.1需求分析设计简
3、易ATM柜员机系统,实现基本功能(查询余额,取款,存款,修改密码)。各种基本功能的算法分析。编程实现具体功能。运行测试程序,调试纠正运行错误。调试无误,运行,测试具体功能。5.1.1问题描述 设计ATM柜员机系统界面,通过点击总窗口界面上的按钮,实施各基本功能。5.1.2基本要求 在本程序中,设计一个文本区域和一个按钮区域。设计过程中利用最基本GUI界面开发,Java语言程序设计结合组件、容器、框架、事件监听等相关知识,完成一个关于ATM柜员机系统的界面制作,能够实现对ATM柜员机的基本操作,包括查询余额,取款,存款,修改密码。5.2总体设计5.2.1 类的描述1.类ATM实现总窗口界面。2.
4、类denglu实现登陆功能3.类yue实现查询余额功能4.类cunkuan实现存款功能5.类qukuan实现取款功能6.类xiugaimima实现修改密码功能5.2.2类之间的关系各类均为JPanel的子类,类ATM引用类yue,cunkuan,qukuan,xiugaimima类。5.3详细设计5.3.1类图表1 dengluJTextField j1,j2,j3,j4,j5,j6,j7,j8public void mouseClicked(MouseEvent arg0)表2 yueJTextField j3int zongpublic void mouseClicked(MouseEve
5、nt arg0)表3 qukuanintqu,zongJTextField j3,j4public void mouseClicked(MouseEvent arg0)表4 cunkuanJTextField j3,j5int cun,zongpublic void mouseClicked(MouseEvent arg0)表5 xiugaimimaJTextField j2,j6,j7String l4int countpublic void mouseClicked(MouseEvent arg0) 表6ATMJLabel l1,l2,la4,la5; JTextField j1,j2,j
6、3,j4,j5,j6,j7,j8; JButton b,b1,b2,b3,b4,b5; String l4=123456; int qu,cun,count; int zong=10000; public ATM()Main()5.3.2页面设计6测试与分析1.测试登陆2.测试查询余额3.测试存款4.测试取款测试修改密码7 程序代码import java.awt.Container;import java.awt.FlowLayout;import java.awt.event.KeyEvent;import java.awt.event.KeyListener;import java.awt
7、.event.MouseEvent;import java.awt.event.MouseListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JTextField;public class ATM extends JFrame JLabel l1,l2,la4,la5; JTextField j1,j2,j3,j4,j5,j6,j7,j8; JButton b,b1,b2,b3,b4,b5; String l4=123456; int
8、 qu,cun,count; int zong=10000; public ATM()this.setSize(235,315);this.setTitle(ATM柜员机模拟程序);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setLocationRelativeTo(null);this.setLayout(new FlowLayout(); Container c=getContentPane(); l1=new JLabel(卡号); l2=new JLabel(密码); j1=new JTextField(16);
9、j2=new JTextField(10); j8=new JTextField(20); b=new JButton(登陆); b5=new JButton(查询余额); c.add(l1); c.add(j1); c.add(l2); c.add(j2); c.add(b); c.add(j8); b.addMouseListener(new denglu(); b5.addMouseListener(new yue(); la4=new JLabel(确认密码);la5=new JLabel(新的密码);b1=new JButton(存款);b2=new JButton(取款);b3=n
10、ew JButton(修改);j3=new JTextField(10);j4=new JTextField(12);j5=new JTextField(12);j6=new JTextField(13);j7=new JTextField(13);c.add(j3);c.add(b5);c.add(j5);c.add(b1);c.add(j4);c.add(b2);c.add(la5);c.add(j6);c.add(la4);c.add(j7);c.add(b3);b2.addMouseListener(new qukuan();b1.addMouseListener(new cunkua
11、n();b3.addMouseListener(new xiugaimima();this.setVisible(true);class denglu implements MouseListener public void mouseClicked(MouseEvent arg0) if(j1.getText().equals(123456) if(j2.getText().equals(l4) j8.setText(登陆成功); else j8.setText(密码错误); j3.setText(null); j4.setText(null); j5.setText(null); j6.s
12、etText(null); j7.setText(null); else j8.setText(账号错误); Override public void mouseEntered(MouseEvent arg0) / TODO Auto-generated method stub Override public void mouseExited(MouseEvent arg0) / TODO Auto-generated method stub Override public void mousePressed(MouseEvent arg0) / TODO Auto-generated met
13、hod stub Override public void mouseReleased(MouseEvent arg0) / TODO Auto-generated method stub class yue implements MouseListener public void mouseClicked(MouseEvent e) if(j8.getText().equals(登陆成功) j3.setText(String.valueOf(zong); Override public void mouseEntered(MouseEvent e) / TODO Auto-generated
14、 method stub Override public void mouseExited(MouseEvent e) / TODO Auto-generated method stub Override public void mousePressed(MouseEvent e) / TODO Auto-generated method stub Override public void mouseReleased(MouseEvent e) / TODO Auto-generated method stub class qukuan implements MouseListener pub
15、lic void mouseClicked(MouseEvent arg0) qu=Integer.parseInt(j4.getText(); if(j3.getText().equals(String.valueOf(zong) if(qu%100=0) if(qu=5000) if(qu0) zong=zong+cun; j3.setText(String.valueOf(zong); else j3.setText(存款金额不能为负); Override public void mouseEntered(MouseEvent arg0) / TODO Auto-generated me
16、thod stub Override public void mouseExited(MouseEvent arg0) / TODO Auto-generated method stub Override public void mousePressed(MouseEvent arg0) / TODO Auto-generated method stub Override public void mouseReleased(MouseEvent arg0) / TODO Auto-generated method stub class xiugaimima implements MouseLi
17、stener public void mouseClicked(MouseEvent arg0) if(j8.getText().equals(登陆成功) if(j6.getText().length()=6) for(int i=0;ij6.getText().length();i+) if(j6.getText().charAt(i)=j6.getText().charAt(0) count+; if(count!=j6.getText().length() if(j7.getText().equals(j6.getText() l4=j6.getText(); j7.setText(密码
18、修改成功); else j7.setText(两次密码不一致); else j6.setText(密码不能为同一个数字); else j6.setText(密码长度不能小于6位); Override public void mouseEntered(MouseEvent arg0) / TODO Auto-generated method stub Override public void mouseExited(MouseEvent arg0) / TODO Auto-generated method stub Override public void mousePressed(MouseE
19、vent arg0) / TODO Auto-generated method stub Override public void mouseReleased(MouseEvent arg0) / TODO Auto-generated method stub public static void main(String args) new ATM();8 总结与展望这次面向对象程序设计的课程设计是学习完面向对象程序设计这门课程之后进行的一次全面性的综合练习。这次练习深化了我对面向对象程序设计这门课程的理解,使我更加熟练的掌握了使用Java语言进行软件设计的方法,提高了我运用Java语言解决实
20、际问题的能力。在设计程序过程中,每一步都需要认真考虑,仔细斟酌。本次课程设计使我认识到很多学习中的诸多不足,尤其是对基础知识掌握的不够透彻,运用不够灵活,而且也认识到理论应紧密联系实际。在未来的学习生活中,我会把面向对象程序设计运用到自己的学习和生活中,充分运用面向对象程序设计来帮助和解决问题。参考文献1 屈辉立,陈可明,石武信.JSP网站编程教程M.第1版, 北京:北京希望电子出版社,2005 2 白勇.用B/S模式构建在线考试系统J,重庆电力高等专科学校学报,2003,10(4): 100130.3 刘万军,郑少京,王松波,梁清华Java6程序设计,清华大学出版社成绩评定 成绩 教师签字
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1