首先放一个客户(其实就是老师给的作业)需求的效果图

在这里先准备所需要的类

用户类:卡号  密码  真实姓名  余额  开户时间定义Account类 存储用户信息 封装属性 并提供getXXX和setXXX
银行业务类:  属性:所有的储户   开户 、 存款、 取款  、查询余额、 转账BankService   List<Account>      5个方法日期工具类 :方便调用
1. 获取系统当前日期时间的方法  static键盘输入的工具类:
1.获取键盘输入的整数的方法   static
2.获取键盘输入的小数的方法   static
3.获取键盘输入的字符串的方法  static系统操作界面: 用户在没有选择6,退出之前,可以重复做业务死循环  用户不退出,永远不退出

在这里先给出几个类 (实不相瞒, 还没写完, 也没法给全部)
Account 类

package com.ATM.bean;// 卡号  密码  真实姓名  余额  开户时间
// 储存用户信息
public class Account {private String cardNum;private int password;private String accountName;private double money;private String createDate;public Account() {}public Account(String cardNum, int password, String accountName, double money, String createDate) {this.cardNum = cardNum;this.password = password;this.accountName = accountName;this.money = money;this.createDate = createDate;}public String getCardNum() {return cardNum;}public void setCardNum(String cardNum) {this.cardNum = cardNum;}public int getPassword() {return password;}public void setPassword(int password) {this.password = password;}public String getAccountName() {return accountName;}public void setAccountName(String accountName) {this.accountName = accountName;}public double getMoney() {return money;}public void setMoney(double money) {this.money = money;}public String getCreateDate() {return createDate;}public void setCreateDate(String createDate) {this.createDate = createDate;}
}

日期工具类 DateUtil
获取 yyyyMMddHHmmss + 1000以内的随机数用来作为卡号

package com.ATM.util;import java.text.SimpleDateFormat;
import java.util.Date;/*** 日期工具类*/
public class DateUtil {/*** 获取系统当前日期* @param option 1: yyyy-MM-dd HH:mm:ss   2: yyyyMMddHH:mm:ss* @return*/public static String getDate(int option){Date date=new Date();String pattern="";if (option!=1&&option!=2){pattern="yyyy-MM-dd HH:mm:ss";}else{pattern=(option==1?"yyyy-MM-dd HH:mm:ss":"yyyyMMddHHmmss");}SimpleDateFormat sdf=new SimpleDateFormat(pattern);return sdf.format(date);}
}

键盘输入工具类 KeyBoardInputUtil

package com.ATM.util;import java.util.Scanner;/*** 键盘输入工具类*/
public class KeyBoardInputUtil {/*** 获取键盘输入的整数* @return*/public static int getInt(){Scanner sn=new Scanner(System.in);int num=sn.nextInt();return num;}/*** 获取键盘输入的小数* @return*/public static double getDouble(){Scanner sn=new Scanner(System.in);double num=sn.nextDouble();return num;}/*** 获取键盘输入的字符串* @return*/public static String getString(){Scanner sn=new Scanner(System.in);String num=sn.next();return num;}
}

还有两个最重要的类还没完成, 等写完再发 (应该不会忘记吧…)
还有两个类一个是银行的业务类 BankService
还有一个是银行的操作页面 BankView
然后这个小的银行ATM项目就完成啦
在存储方面会用的是集合 ArrayList 来存储数据
嗯, 暂时就这样, 有没有兄弟期待想要 o( ̄▽ ̄)ブ

下篇在这!!!直接点击跳转到主类!!

Java实现超级简易的银行ATM机项目(详细注释版)相关推荐

  1. ATM柜员机JAVA课程设计_JAVA课程设计报告银行ATM机系统.doc

    JAVA课程设计报告银行ATM机系统 Java课程设计报告 题 目 银行ATM机系统 所在院系 软件学院 学生姓名 金磊 专 业 R机械+软件 班 级 R机械094 学 号 2011年 7 月 15日 ...

  2. 用Java程序模拟银行ATM机,实现包括存款、取款、查询、转账功能的简单应用

    (1)想象现实世界中的相关操作沙及哪些实体呢?一个是储户,一个是ATM机.因 此根据面向对象中的抽象原则,可将其抽象为两个类:代表储户的账户信息类,代表银行 ATM机的ATM类.外加一个主类(负责实例 ...

  3. 面向对象程序设计——银行ATM机系统

    文章目录 针对于面向对象设计--做一个简单的银行ATM机系统 ATM机需求分析 用户类 ATM机类 银行类 注册操作的大概流程 登录操作的大概流程 用户类代码 ATM机类代码 bank类代码(主类) ...

  4. python实现模仿银行ATM机

    python实现模仿银行ATM机 学习了一个星期,分享一下自己的学习成果.本星期实现的是银行ATM机的功能. 实现效果如下: 开始界面,输入用户名密码之后到达主界面. 选择账户信息效果: 打印了个人的 ...

  5. java编写的atm机项目结题报告_java编写的atm机项目结题报告.docx

    java编写的atm机项目结题报告 java编写的atm机项目结题报告 篇一:java自动取款机模拟程序报告含源代码 合肥学院 计算机科学与技术系 课程设计报告 XX-XX学年第一学期 课学学专指 业 ...

  6. java存款程序_ATM 用java语言做的一个模拟ATM机的程序。可支持取款存款等操作 Develop 238万源代码下载- www.pudn.com...

    文件名称: ATM下载 收藏√  [ 5  4  3  2  1 ] 开发工具: Java 文件大小: 865 KB 上传时间: 2015-04-13 下载次数: 0 提 供 者: 葛宏涛 详细说明: ...

  7. Java程序模拟银行ATM机,实现存款、取款、查询、转账功能等操作

    一.介绍 ATM柜员机模拟程序 程序的功能点如下: 要求使用图形用户界面: 通过主界面,可以进入管理员界面.用户界面.系统设置界面.退出: 启动软件,可以进入用户模式,也可以进入系统管理模式: 进入系 ...

  8. java实现银行ATM机操作

    这是一个简单的模拟银行系统的一个程序,用来实现ATM机操作,用java写的, 下面是实现代码: package com.ATM;import java.util.Scanner;import java ...

  9. Java 交互小实例:(ATM机模拟、饮料自助机模拟)

      交互实例:   ( 算法思想基本应用:基本语句的熟练掌握.逻辑思维.注意第二个小程序的小细节处理.) 1.ATM机 取款 ------模拟: 功能:查询余额.取款.存款.退卡. 具体代码: pac ...

最新文章

  1. jquery 使用jquery操作Dom
  2. PyTorch tensorboard报错:TensorBoard logging requires TensorBoard version 1.15 or above
  3. 【Linux】一步一步学Linux——ps命令(119)
  4. python从数分到数编(part2)--随机数及数组
  5. ofo 99 元押金变 97 元;华为“抛弃”美国;App Store 涉嫌垄断 | 极客头条
  6. 通过注册表修改打开方式
  7. BZOJ 1412: [ZJOI2009]狼和羊的故事( 最小割 )
  8. Java相关技术文档汇总
  9. Chapter 5 (Limit Theorems): Markov and Chebyshev Inequalities (马尔可夫和切比雪夫不等式)
  10. mysql表空间加密
  11. iOS音乐播放器(歌词自动滚动)
  12. 如何学习单片机——从51过渡到STM32
  13. 两码一号:整体方案回顾
  14. cf-#501 div3 C. Songs Compression
  15. 互联网专利战场急先锋-高智发明,微软苹果等撑腰
  16. 百家云CEO李钢江给员工们的一封信(转载)
  17. 为了苦苦寻觅视频素材的你,我们整理了 9 个版权视频网站
  18. 利用Winrar自解压捆绑文件
  19. 7-6 王牌特工3 (15 分)
  20. 登录服务器虚拟控制台,服务器控制台登录类

热门文章

  1. 个人对23种设计模式总结 优缺点理解并分析
  2. 一个双工模式协商的问题
  3. 图片处理看这篇就完了「GitHub 热点速览 v.21.48」
  4. 如何将卫星影像(高程)导出为地方坐标系
  5. 部署实战 | 手把手教你在Windows下用TensorRT部署YOLOv8
  6. SQLAlchemy一对多,多对多操作
  7. iOS - 外包开发常用第三方库(1)
  8. 灾备克隆后solr启动失败:org.apache.solr.common.SolrException: Error opening new searcher
  9. Django动态获取mysql连接,django model中的choices 动态从数据库中获取
  10. 动画 ui - 收藏集 - 掘金