ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:884.54KB ,
资源ID:678327      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/678327.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(银行柜员系统.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

银行柜员系统.docx

1、银行柜员系统项目案例:银行柜员系统10.1 训练技能点 数据类型和变量 Java运算符 Java常用类 Java控制台输入输出 类的设计和编写 对象的创建 数组的使用10.2 需求说明10.2.1 需求概述储蓄是个人理财的重要手段,是我们生活的重要组成部分。我们需要通过和银行柜员交互来完成开户、存款、取款、转账等业务。这就需要一个精确度高、并发性强的银行柜员系统,来帮助我们完成基本的账户理财功能。该系统的角色包括:银行柜员和储户。10.2.2 系统用例图 在整个系统中,银行柜员是执行操作的人,储户将自己的信息通过银行柜员写入系统,从而进行银行的各种基础交易。图10.2.1是该系统的用例图。图1

2、0.2.1 银行柜员系统用例图10.2.3 开发环境JDK 1.5以上、MyEclipse 8.5以上10.3 设计与思路分析10.3.1 功能分析 结合上面的用例图,系统的功能可以分为以下几个模块: 储户开户 储户存款 储户取款 储户转账 储户当前明细输出 储户详细信息输出 退出其中,各个功能需要完成的任务如下所示:(1) 储户开户本模块实现的功能有:分配账号、写入储户信息、开户信息回显等操作。(2) 储户存款本模块实现的功能有:根据输入的账号查找储户信息、存款操作、存款信息回显、明细账输出询问等操作。其中,操作完毕后系统会询问是否输出账户交易的明细账,如果储户需要,系统会输出该账户自开户日

3、起的所有明细信息。(3) 储户取款本模块实现的功能有:根据输入的账号查找储户信息、取款操作、取款信息回显、明细账输出询问等操作。(4) 储户转账本模块实现的功能有:根据输入的账号查找欲转出的储户信息、查找欲转入的储户信息、询问是否确认转账、以及转账操作、转账信息回显、明细账输出询问等操作。(5) 储户当前明细账打印本模块实现的功能有:根据输入的账号,查询相应储户的当前账户明细账功能。(6) 储户详细信息打印本模块实现的功能有:根据输入的账号,查询相应储户的当前账户详细信息功能。(7) 退出本系统建议分为5个类来实现,可以划分到3个不同的包中运行。 com.test.bank.bean包中的Ac

4、count实体类和TradeInfo实体类,分别表示账户信息和交易明细信息。 com.test.bank.method包中的BankMethod业务类和BankFace界面业务类。 com.test.bank.main包中的BankMain主类。其中,系统中这五个类的类图如下图10.2.2所示。 储户类 交易信息类 交易业务类 交易界面类系统主类图10.2.2系统各个类的类图10.3.2 数据要求本系统没有任何数据文件,也没有任何数据库文件。所有的信息都存储在系统运行时自动创建的长度为100的数组中。也就是说,本项目的数据只在运行时存储在内存中,可同时存储100个以内的账户信息。一旦系统退出,

5、所有的储户信息都会丢失。虽然如此设计不符合现实生活的实际情况,但是对于现阶段银行系统主要功能的模拟已经足够。10.4 实现步骤(1) 根据交易信息类TradeInfo的类图,设计交易信息类的详细信息,以打印交易明细账。参考关键代码如下所示:/* * 此类是交易明细类,用于记录每一笔银行交易的明细信息 */package com.test.bank.bean;import java.util.*;import java.text.*;public class TradeInfo / 账户交易号 / 每个账户的交易号从1累加,等于该账户的accountId + tradeIndex; / 开户时t

6、radeIndex=1,此后每交易一笔,tradeId+。 private int tradeId; private char tradeDirection; private double tradeAmount; / 交易类型:1 开户、2 存款、3 取款、4、转账 private int tradeType; private Date tradeDate; private String tradeDescription; public TradeInfo() tradeId = -1; public TradeInfo(char tradeDirection, double tradeAm

7、ount, int tradeType, Date tradeDate, String tradeDescription) this.tradeId = -1; this.tradeDirection = tradeDirection; this.tradeAmount = tradeAmount; this.tradeType = tradeType; this.tradeDate = tradeDate; this.tradeDescription = tradeDescription; public void setTradeId(int tradeId) this.tradeId =

8、tradeId; public int getTradeId() return this.tradeId; / tradeId的自增方法 public void addTradeId() tradeId+; /其他属性的getters和setters方法,略去。 . public String toString() DecimalFormat df = new DecimalFormat(¥0.00); String str_tradeType = ; switch (this.getTradeType() case 1: str_tradeType = 开户; break; case 2:

9、str_tradeType = 存款; break; case 3: str_tradeType = 取款; break; case 4: str_tradeType = 转账; break; default: str_tradeType = 其他交易; break; SimpleDateFormat sdf = new SimpleDateFormat(yyyy-MM-dd hh:mm:ss); StringBuffer stb = new StringBuffer(); stb.append(this.getTradeId(); stb.append( ); stb.append(this

10、.getTradeDirection(); stb.append(t ); stb.append(str_tradeType); stb.append(tt); stb.append(df.format(this.getTradeAmount(); stb.append( ); stb.append(sdf.format(this.getTradeDate(); stb.append(t); stb.append(this.getTradeDescription(); stb.append(t); return new String(stb); (2) 分析系统功能,根据类图设计储户类Acco

11、unt,编写储户类的详细信息。参考关键代码如下所示:/* * 此类是银行账户类,用于记录银行的账户信息 */package com.test.bank.bean;import java.util.*;import java.text.*;public class Account private int accountId; / 储户账户号 private String realName; / 储户实名 private String password; / 储户账户密码 private double balance; / 储户账户余额 private String identityId; / 储

12、户身份证号码 private String address; / 储户联系地址 private String phone; / 储户联系电话 private Date openDate; / 储户开户日期 private int tradeCount; / 储户当前交易记录数(该数目=100) private TradeInfo tradeList; / 储户交易明细 public Account() this.tradeCount = 0; tradeList = new TradeInfo100; public Account( int accountId, String realName

13、, String password, double balance, String identityId, String address, String phone, Date openDate) this.tradeCount = 0; tradeList = new TradeInfo100; this.accountId = accountId; this.realName = realName; this.password = password; this.balance = balance; this.identityId = identityId; this.address = a

14、ddress; this.phone = phone; this.openDate = openDate; public void setAccountId( int accountId ) this.accountId = accountId; public int getAccountId() return this.accountId; / 其他属性的getters和setters方法,此处省略。 . / tradeCount的set方法不再设置 / addTradeCount()方法定义为私有的,只能为添加明细的方法调用(private修饰的方法是私有的方法,“私有”的概念将在后续学习中讲解) private void addTradeCount() this.tradeCount+; public int getTradeCount() return this.tradeCount; public void addTradeInfo(TradeInfo info) i

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

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