java课程设计.docx

上传人:b****7 文档编号:23716730 上传时间:2023-05-20 格式:DOCX 页数:16 大小:66.76KB
下载 相关 举报
java课程设计.docx_第1页
第1页 / 共16页
java课程设计.docx_第2页
第2页 / 共16页
java课程设计.docx_第3页
第3页 / 共16页
java课程设计.docx_第4页
第4页 / 共16页
java课程设计.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

java课程设计.docx

《java课程设计.docx》由会员分享,可在线阅读,更多相关《java课程设计.docx(16页珍藏版)》请在冰豆网上搜索。

java课程设计.docx

java课程设计

 

软件学院

课程设计报告书

 

课程名称面向对象程序课程设计

设计题目ATM柜员机模拟程序

专业班级

学号

姓名

指导教师

 

2014年6月

目录

1设计时间......................................................2

2设计目的......................................................2

3设计题目......................................................2

4设计任务......................................................2

5设计内容......................................................2

5.1需求分析....................................................2

5.1.1问题描述..................................................2

5.1.2基本要求..................................................2

5.2总体设计....................................................2

5.2.1类的描述..................................................2

5.2.2类之间的关系..............................................4

5.3详细设计....................................................4

5.3.1类图......................................................4

5.3.2页面设计..................................................5

6测试与分析..................................................5

7程序设计......................................................6

8总结与展望...................................................12

参考文献.......................................................13

课程设计成绩评定.............................................13

 

1.设计时间

2014年6月16日至2014年6月20日

2设计目的

面向对象程序设计课程设计是软件工程专业集中实践性环节之一,是学习完《java6程序设计》课程后进行的一次全面的综合练习。

其目的在于加深对java基础理论和基本知识的理解,掌握使用java进行软件设计的基本方法,提高解决实际问题的能力,最终实现对于给定的应用要求,设计出满足要求的程序,使之满足各种用户的应用需求(信息要求和处理要求)。

同时,此次设计对于同学将来的毕业设计和具体工作实践将有重要的意义。

3设计题目

ATM柜员机模拟程序

4设计任务

要求:

使用图形用户界面。

当输入给定的卡号和密码(初始卡号和密码为123456)时,系统能登录ATM柜员机系统,用户可以查询余额,取款,存款,修改密码。

5设计内容

5.1需求分析

设计简易ATM柜员机系统,实现基本功能(查询余额,取款,存款,修改密码

)。

各种基本功能的算法分析。

编程实现具体功能。

运行测试程序,调试纠正运行错误。

调试无误,运行,测试具体功能。

5.1.1问题描述

设计ATM柜员机系统界面,通过点击总窗口界面上的按钮,实施各基本功能。

5.1.2基本要求

在本程序中,设计一个文本区域和一个按钮区域。

设计过程中利用最基本GUI界面开发,Java语言程序设计结合组件、容器、框架、事件监听等相关知识,完成一个关于ATM柜员机系统的界面制作,能够实现对ATM柜员机的基本操作,包括查询余额,取款,存款,修改密码。

5.2总体设计

5.2.1类的描述

1.类ATM实现总窗口界面。

2.类denglu实现登陆功能

3.类yue实现查询余额功能

4.类cunkuan实现存款功能

5.类qukuan实现取款功能

6.类xiugaimima实现修改密码功能

5.2.2类之间的关系

各类均为JPanel的子类,类ATM引用类yue,cunkuan,qukuan,xiugaimima类。

5.3详细设计

5.3.1类图

表1

denglu

JTextFieldj1,j2,j3,j4,j5,j6,j7,j8

publicvoidmouseClicked(MouseEventarg0)

表2

yue

JTextFieldj3

intzong

publicvoidmouseClicked(MouseEventarg0)

表3

qukuan

int

qu,zong

JTextFieldj3,j4

publicvoidmouseClicked(MouseEventarg0)

表4

cunkuan

JTextFieldj3,j5

intcun,zong

publicvoidmouseClicked(MouseEventarg0)

表5

xiugaimima

JTextFieldj2,j6,j7

Stringl4

intcount

publicvoidmouseClicked(MouseEventarg0)

表6

ATM

JLabell1,l2,la4,la5;

JTextFieldj1,j2,j3,j4,j5,j6,j7,j8;

JButtonb,b1,b2,b3,b4,b5;

Stringl4="123456";

intqu,cun,count;

intzong=10000;

publicATM()

Main()

5.3.2页面设计

6测试与分析

1.测试登陆

2.测试查询余额

3.测试存款

4.测试取款

测试修改密码

7程序代码

 

importjava.awt.Container;

importjava.awt.FlowLayout;

importjava.awt.event.KeyEvent;

importjava.awt.event.KeyListener;

importjava.awt.event.MouseEvent;

importjava.awt.event.MouseListener;

importjavax.swing.JButton;

importjavax.swing.JFrame;

importjavax.swing.JLabel;

importjavax.swing.JTextField;

publicclassATMextendsJFrame{

JLabell1,l2,la4,la5;

JTextFieldj1,j2,j3,j4,j5,j6,j7,j8;

JButtonb,b1,b2,b3,b4,b5;

Stringl4="123456";

intqu,cun,count;

intzong=10000;

publicATM(){

this.setSize(235,315);

this.setTitle("ATM柜员机模拟程序");

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setLocationRelativeTo(null);

this.setLayout(newFlowLayout());

Containerc=getContentPane();

l1=newJLabel("卡号");

l2=newJLabel("密码");

j1=newJTextField(16);

j2=newJTextField(10);

j8=newJTextField(20);

b=newJButton("登陆");

b5=newJButton("查询余额");

c.add(l1);

c.add(j1);

c.add(l2);

c.add(j2);

c.add(b);

c.add(j8);

b.addMouseListener(newdenglu());

b5.addMouseListener(newyue());

la4=newJLabel("确认密码");

la5=newJLabel("新的密码");

b1=newJButton("存款");

b2=newJButton("取款");

b3=newJButton("修改");

j3=newJTextField(10);

j4=newJTextField(12);

j5=newJTextField(12);

j6=newJTextField(13);

j7=newJTextField(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(newqukuan());

b1.addMouseListener(newcunkuan());

b3.addMouseListener(newxiugaimima());

this.setVisible(true);

}

classdengluimplementsMouseListener{

publicvoidmouseClicked(MouseEventarg0){

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.setText(null);

j7.setText(null);

}

}

else

{

j8.setText("账号错误");

}

}

@Override

publicvoidmouseEntered(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmouseExited(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmousePressed(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmouseReleased(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

}

classyueimplementsMouseListener{

publicvoidmouseClicked(MouseEvente){

if(j8.getText().equals("登陆成功"))

j3.setText(String.valueOf(zong));

}

@Override

publicvoidmouseEntered(MouseEvente){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmouseExited(MouseEvente){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmousePressed(MouseEvente){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmouseReleased(MouseEvente){

//TODOAuto-generatedmethodstub

}

}

classqukuanimplementsMouseListener

{

publicvoidmouseClicked(MouseEventarg0){

qu=Integer.parseInt(j4.getText());

if(j3.getText().equals(String.valueOf(zong))){

if(qu%100==0)

{

if(qu<=5000)

{

if(qu<=zong)

{

zong=zong-qu;

j3.setText(String.valueOf(zong));

}

else

{

j3.setText("余额不足");

}

}

else

{

j3.setText("取款金额须低于5000");

}

}

else

{

j3.setText("取款金额须为100的倍数");

}

}}

@Override

publicvoidmouseEntered(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmouseExited(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmousePressed(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmouseReleased(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

}

classcunkuanimplementsMouseListener{

publicvoidmouseClicked(MouseEventarg0){

cun=Integer.parseInt(j5.getText());

if(j3.getText().equals(String.valueOf(zong))){

if(cun>0)

{

zong=zong+cun;

j3.setText(String.valueOf(zong));

}

else

{

j3.setText("存款金额不能为负");

}

}}

@Override

publicvoidmouseEntered(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmouseExited(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmousePressed(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmouseReleased(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

}

classxiugaimimaimplementsMouseListener{

publicvoidmouseClicked(MouseEventarg0){

if(j8.getText().equals("登陆成功")){

if(j6.getText().length()>=6)

{

for(inti=0;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("密码修改成功");

}

else

{

j7.setText("两次密码不一致");

}

}

else

{

j6.setText("密码不能为同一个数字");

}

}

else

{

j6.setText("密码长度不能小于6位");

}

}}

@Override

publicvoidmouseEntered(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmouseExited(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmousePressed(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

@Override

publicvoidmouseReleased(MouseEventarg0){

//TODOAuto-generatedmethodstub

}

}

publicstaticvoidmain(String[]args){

newATM();

}

}

8总结与展望

这次面向对象程序设计的课程设计是学习完面向对象程序设计这门课程之后进行的一次全面性的综合练习。

这次练习深化了我对面向对象程序设计这门课程的理解,使我更加熟练的掌握了使用Java语言进行软件设计的方法,提高了我运用Java语言解决实际问题的能力。

在设计程序过程中,每一步都需要认真考虑,仔细斟酌。

本次课程设计使我认识到很多学习中的诸多不足,尤其是对基础知识掌握的不够透彻,运用不够灵活,而且也认识到理论应紧密联系实际。

在未来的学习生活中,我会把面向对象程序设计运用到自己的学习和生活中,充分运用面向对象程序设计来帮助和解决问题。

参考文献

[1]屈辉立,陈可明,石武信.JSP网站编程教程[M].第1版,北京:

北京希望电子出版社,2005

[2]白勇.用B/S模式构建在线考试系统[J],重庆电力高等专科学校学报,2003,10(4):

100~130.

[3]刘万军,郑少京,王松波,梁清华Java6程序设计,清华大学出版社

 

成绩评定

成绩教师签字

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 兵器核科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1