Java实现ATM机模拟系统(week1)

目录

目的

项目规划(第一周)

ATM机系统

第一周

需求分析

账户管理大类

Account(账户)类

AccountOperations(对账户操作)接口

创建账户

账户内容管理

账户权限管理

User类

UserOperations(用户操作)接口

Operations类

货币大类

基本属性

方法

操作界面

合作开发(利用git)

后言


 

目的

为了快速了解并学习Java知识,博主想要做一个ATM机模拟系统(和朋友一起),同时写下博客记录这一过程。

项目规划(第一周)

ATM机系统

货币的存储管理系统,主要实现一下功能:

  1. 注册登录、保存用户信息

  2. 操作页展示、查询账户、修改账户信息

  3. 存款、取款

  4. 转账

第一周

  1. 账户管理大类

  2. 货币大类

  • 建立类、类的属性、类之间的关系、类包含的方法(大概的基础功能方法,只需写出,不用实现)。
  • 进行需求分析,设想项目的需要实现哪些功能,系统的模式、规则,思考该怎么体现继承、多态、集合。

需求分析

账户管理大类

Account(账户)类

(1)基本属性 :用户账号(account)、账号密码(cipher)、账户余额(deposit)、年利率(annual Interest Rate)、存款时间(time)按年来算。

(2)私有方法:setCipher()方法(修改密码)、getDeposit() 方法获取账户余额。

AccountOperations(对账户操作)接口

创建账户
  • 根据不同地区,1 到 6位有不同的固定的银行代号数字;

  • 7 到 15 位为随机给出的数字(Random);

  • 第 16 位数由前十五位数按特定方式得出;

  • 用户输入手机号码。

  • 密码为用户自定义。

  • 完成创建

账户内容管理
  • 保存账户信息(SaveAccountInformation):使用I/O类库中的方法对文件进行操作,将用户的信息存入文件,以便下一次能够找到。

  • 调出账户信息(RetrieveAccountInformation):从文件中调出与账号密码匹配的相关信息。

账户权限管理
  • 登录账户:从保存用户信息的文件中查找是否存在该账户,如果不存在则提示”该用户不存在“,如果存在则对用户输入的密码和该账户密码进行比较判断,如果错误则提示”密码错误,请重新输入“,如果正确则弹出操作页面让用户选择下一步操作。

  • 忘记密码操作,要求用户输入手机号码,与文件中的数据匹配之后可以触发修改密码的操作。

  • 退出账户:退出账户后应该自动保存这次用户操作之后的用户信息到指定文档中。并且退出到登录用户界面。

User类

基本属性:用户登录时输入的账号(account)和密码(cipher)。

基本方法:ATM机系统用户操作端 operationEnd()方法。

UserOperations(用户操作)接口

  • 存钱:修改账户中私有变量 存款(deposit),并保存

  • 取钱:修改账户中私有变量 存款(deposit),并保存

  • 查询账户余额。

  • 修改密码:首先要先输入以前的密码,失败提示”重新输入“,成功就提示”新密码“,用户就可以输入6位数的新密码,注意如果新密码和旧密码相同,则提示”密码不能和之前相同“。

  • 转账:输入要转入账户的卡号,然后输入要转入金额,输入密码,如果账户余额大于转出金额,则提示”转入成功“,否则提示”余额不足“。转账完毕后,自动保存转出和转入账户信息。

  • 货币交换

Operations类

接上接口 UserOperations接口 和 AccountOperations接口,通过用户类中传入的参数来具体实现一系列的操作。

货币大类

基本属性

货币价值(与其他货币交换的比率)。

方法
  • 用外币交换人民币

  • 用人民币交换外币

  • 存入币种为外币时,自动转化为人民币数额加入余额中。

  • 同理,取出时可以选择币种,取出数额转换为人民币扣除。

操作界面

(1)打开系统后,弹出登录页面,提供两种登录方式(手机号登录与账号登录),提供四种操作,切换登录方式,创建账户,忘记密码以及退出系统。

(2)登录成功后,展示主界面,提供用户的主要操作:

  • 存取

  • 转账

  • 改密

  • 查询余额

  • 货币交换

  • 操作日志查询

  • 退出系统

(3)在每项具体操作中,都提供返回上一页的操作,以便用户能撤销此次操作。

合作开发(利用git)

 借助git,利用gitee远程库,实现合作开发。

后言

第一周主要进行了ATM模拟系统的需求分析,学习了git的使用并初步搭建了一个git库便于进行合作开发,同时在IDEA中对项目代码进行了基本架构。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

eternal*

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值