您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 设计及方案 > 超市收银程序--(JAVA课程设计-2011)
软件学院课程设计报告书课程名称面向对象程序设计设计题目超市收银程序专业班级学号姓名指导教师2011年6月21设计时间2011.6.6-2011.06.102设计目的《面向对象程序设计》是一门实践性很强的计算机专业基础课程,课程设计是学习完该课程后进行的一次较全面的综合练习。其目的在于通过实践加深学生对面向对象程序设计的理论、方法和基础知识的理解,掌握使用Java语言进行面向对象设计的基本方法,提高运用面向对象知识分析实际问题、解决实际问题的能力,提高学生的应用能力。3设计任务超市收银程序(1)使用图形用户界面实现。(2)由收银员输入顾客的会员卡卡号(若有卡)、所购商品的货号等。从数据库中取出相关商品的价格信息,再把这些信息返回给收银台,计算出该顾客所购商品的总价格。(3)每天营业结束把该收银台的销售总额进行统计汇总(要求包括商品种类、数量、销售总额、结账人次等信息,其余可自行丰富)并存储在数据库中。(4)所有持卡顾客的消费商品情况存储到文件以供查询。(5)对没有卡的消费情况不记录该顾客的消费情况等个人信息。如果一个未持卡顾客一次购物满200元,结完账后系统提示可为其发放一张会员卡。4设计内容4.1概要设计4.1.1体系结构设计超市收银系统消费者消费商品管理会员管理帐目结算34.2功能模块设计4.2.1功能说明4.2.1.1消费者消费普通消费者消费在超市收银的首界面显示,输入消费者购买商品的编号以及数量,算出消费总金额,如果消费者单次消费的金额达到了200元,系统提示此消费者可以成为会员。会员消费在首界面输入会员卡号,然后显示会员姓名。4.2.1.2账目结算在本窗口中显示超市在该结账机上的当天的销售总额(包括会员消费总额以及非会员消费总额),同时还显示当天在该机上的出售的商品的情况。4.2.1.3会员管理如果消费者单次消费的金额达到了200元,系统提示此消费者可以成为会员,并且录入会员基本信息。4.2.1.4商品管理输入商品编号会在面板内提示相应的价格。4.3程序运行与调试4.3.1运行界面主界面4确定会员以及商品价格消费总额满200发会员卡一张总结全天账单4.3.2程序代码及解释importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;classshangpin{StringSId;StringSmane;intjiage;publicshangpin(Stringa,Stringb,intc){SId=a;Smane=b;jiage=c;5}}classhuiyuan{StringHId;StringHname;publichuiyuan(Stringa,Stringb){HId=a;Hname=b;}}publicclasschaoshiextendsJFrame{staticintkey=0;//会员staticintsum1=0;//总消费staticintsum2=0;//当天合计staticinthuiyuansum=0;//会员人数staticintSpinsum1=0;//商品1合计staticintSpinsum2=0;//商品2合计staticintSpinsum3=0;//商品3合计staticintSpinsum4=0;//商品4合计staticintSpinsum5=0;//商品5合计publicstaticvoidmain(String[]agrs){JFrameframe=newJFrame(超市);frame.setSize(400,250);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);Containerc=frame.getContentPane();c.add(pan());frame.setVisible(true);}//向窗口中添加面板和按钮6staticJPanelpan(){JPanelpanel=newJPanel();JPanelpart1=newJPanel();part1.add(newJLabel(会员卡号:));finalJTextFieldtext1=newJTextField();text1.setHorizontalAlignment(JTextField.RIGHT);text1.setColumns(11);JButtonbutton1=newJButton(确定);part1.add(text1);part1.add(button1);part1.setVisible(true);finalJLabelJLabel00=newJLabel(非会员);part1.add(JLabel00);panel.add(part1);JPanelpart2=newJPanel();part2.add(newJLabel(商品代号:));finalJTextFieldtext2=newJTextField();text2.setHorizontalAlignment(JTextField.RIGHT);text2.setColumns(15);JButtonbutton2=newJButton(确定);part2.add(text2);part2.add(button2);panel.add(part2);JPanelpart3=newJPanel();finalJLabelJLabel0=newJLabel();finalJLabelJLabel1=newJLabel(000);finalJLabelJLabel2=newJLabel(0000);part3.add(newJLabel(商品名));part3.add(JLabel0);part3.add(newJLabel(商品价格));part3.add(JLabel1);part3.add(newJLabel(元));part3.add(newJLabel(总价格));part3.add(JLabel2);part3.add(newJLabel(元));7part3.add(newJLabel());panel.add(part3);JPanelpart4=newJPanel();JButtonbutton3=newJButton(结账);JButtonbutton4=newJButton(总汇);part4.add(button3);part4.add(newJLabel());part4.add(button4);panel.add(part4);button1.addActionListener(newActionListener(){huiyuanhuiyuan1=newhuiyuan(001,小李);huiyuanhuiyuan2=newhuiyuan(002,小张);huiyuanhuiyuan3=newhuiyuan(003,小王);//添加时间监听publicvoidactionPerformed(ActionEvente){Stringkahao=text1.getText();if(kahao.equals(huiyuan1.HId)){JLabel00.setText(huiyuan1.Hname);key=1;};if(kahao.equals(huiyuan2.HId)){JLabel00.setText(huiyuan2.Hname);key=1;};if(kahao.equals(huiyuan3.HId)){JLabel00.setText(huiyuan3.Hname);key=1;};}});button2.addActionListener(newActionListener(){shangpinshangpin1=newshangpin(001,商品1,50);shangpinshangpin2=newshangpin(002,商品2,100);shangpinshangpin3=newshangpin(003,商品3,30);shangpinshangpin4=newshangpin(004,商品4,60);shangpinshangpin5=newshangpin(005,商品5,200);//添加时间监听publicvoidactionPerformed(ActionEvente){Stringshangpinhao=text2.getText();if(shangpinhao.equals(shangpin1.SId)){JLabel0.setText(+shangpin1.Smane);Stringstr=String.format(%04d,shangpin1.jiage);JLabel1.setText(str);8sum1=sum1+shangpin1.jiage;sum2=sum2+shangpin1.jiage;Stringstr1=String.format(%04d,sum1);JLabel2.setText(str1);Spinsum1++;};if(shangpinhao.equals(shangpin2.SId)){JLabel0.setText(+shangpin2.Smane);Stringstr=String.format(%04d,shangpin2.jiage);JLabel1.setText(str);sum1=sum1+shangpin2.jiage;sum2=sum2+shangpin2.jiage;Stringstr1=String.format(%04d,sum1);JLabel2.setText(str1);Spinsum2++;};if(shangpinhao.equals(shangpin3.SId)){JLabel0.setText(+shangpin3.Smane);Stringstr=String.format(%04d,shangpin3.jiage);JLabel1.setText(str);sum1=sum1+shangpin3.jiage;sum2=sum2+shangpin3.jiage;Stringstr1=String.format(%04d,sum1);JLabel2.setText(str1);Spinsum3++;};if(shangpinhao.equals(shangpin4.SId)){JLabel0.setText(+shangpin4.Smane);Stringstr=String.format(%04d,shangpin4.jiage);JLabel1.setText(str);sum1=sum1+shangpin4.jiage;sum2=sum2+shangpin4.jiage;9Stringstr1=String.format(%04d,sum1);JLabel2.setText(str1);Spinsum4++;};if(shangpinhao.equals(shangpin5.SId)){JLabel0.setText(+shangpin5.Smane);Stringstr=String.format(%04d,shangpin5.jiage);JLabel1.setText(str);sum1=sum1+shangpin5.jiage;sum2=sum2+shangpin5.jiage;Stringstr1=String.format(%04d,sum1);JLabel2.setText(str1);Spinsum5++;}}});button3.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){if(sum1!=0)huiyuansum++;JDialogduox=newJDialog();JPanelduoxP=newJPan
本文标题:超市收银程序--(JAVA课程设计-2011)
链接地址:https://www.777doc.com/doc-2399592 .html