0515 银行转帐功能演练
定义一个系统类Game
开始方法
它来控制主逻辑
显示欢迎语句
欢迎使用银行系统
显示功能菜单
显示菜单
接收键盘输入
调用对应的方法
初始架构
效果
测试类
重头Game类
import java.util.Scanner;public class Game {// 键盘输入对象Scanner ipt = new Scanner(System.in);// 开始方法,系统的入口public void start() {// 欢迎用户welcome();// 功能菜单run();}private void run() {// 显示功能菜单System.out.println("1 开户");System.out.println("2 登陆");// 接收键盘输入System.out.println("请输入需要的功能:");String choice = ipt.next();// 调用对应的功能switch (choice) {case "1":System.out.println("run 开户功能");break;case "2":System.out.println("run 登陆功能");break;default:System.out.println("非法输入");break;}}private void welcome() {System.out.println("欢迎使用银行系统");}
}
让功能循环起来
改造run方法
代码
import java.util.Scanner;
import java.util.concurrent.TransferQueue;public class Game {// 键盘输入对象Scanner ipt = new Scanner(System.in);// 开始方法,系统的入口public void start() {// 欢迎用户welcome();// 功能菜单run();}private void run() {while (true){System.out.println("1 开户");System.out.println("2 登陆");System.out.println("q 退出");// 接收键盘输入System.out.println("请输入需要的功能:");String choice = ipt.next();// 调用对应的功能switch (choice) {case "1":System.out.println("run 开户功能");break;case "2":System.out.println("run 登陆功能");break;case "q":System.out.println("退出系统");System.exit(0);break;default:System.out.println("非法输入");break;}}}private void welcome() {System.out.println("欢迎使用银行系统");}
}
开户的准备工作
分析需要的东西
开户成功,会有用户对象,需要用户类
银行会有很多用户,用户需存在容器中,需要有用户数组
往用户数组中添加用户,需要用到数组添加数据的算法,需要有添加用户的算法方法
准备用户类
》分析属性
手机号
户主姓名
金额
密码
》注意事项
要用封装的方式把所有的用户属性都封装起来
》开始编写用户类
》封装热键
效果
》构造方法热键
生成无参构造
生成全参数构造
public class User {// 成员变量private String name;private String password;private String phoneNum;private int money;// 定义构造方法// alt + inspublic User() {}public User(String name, String password, String phoneNum, int money) {this.name = name;this.password = password;this.phoneNum = phoneNum;this.money = money;}// 封装这些属性// alt + ins(位于del上面的键)public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public String getPhoneNum() {return phoneNum;}public void setPhoneNum(String phoneNum) {this.phoneNum = phoneNum;}public int getMoney() {return money;}public void setMoney(int money) {this.money = money;}
}
定义数组与数组算法
明确目标
数组是对象数组,专门用于存放用户对象的
新建一个类,类中定义静态对象数组
算法,编写添加算法(需要添加的用户对象,添加到哪里)
定义对象数组
定义数组添加对象的算法
开户功能
方法的调用
方法的定义
// 开户逻辑private void regiest() {// 接收数据System.out.println("欢迎使用开户功能。。。。");System.out.println("请输入手机号:");String phoneNum = ipt.next();System.out.println("请输入用户名:");String name = ipt.next();System.out.println("请输入密码:");String password = ipt.next();System.out.println("请输入开户的存款金额,输入数字:");int money = ipt.nextInt();// 实例化对象// public User(String name, String password, String phoneNum, int money) {User u = new User(name, password, phoneNum, money);// 把用户放到对象数组中Db.append(u);}
登陆功能
先调用方法
登陆方法开头
查找用户是否存在的算法
登陆方法借用查询算法
完整的登陆功能代码
private void login() {System.out.println("当前是【登陆功能】");System.out.println("请输入登陆用户名:");String name = ipt.next();System.out.println("请输入密码:");String password = ipt.next();// 应该到对象数组中去比对是否存在User u = Db.searchUser(name, password);// 对u进行判断if (u == null) {System.out.println("登陆失败");} else {System.out.println("登陆成功");}}
菜单优化
登陆的与未登陆的看到界面不一样
定义成员变量
登陆成功后给这个成员变量赋值
根据this.u来判断是否登陆了
》方法的调用
》方法的定义
存款功能
》 在用户类中编写存款功能
注意是用户在存款
》在系统类中编写方法的调用
》存款逻辑
用户取款
在用户类中定义方法
在系统类中编写取款功能
》取款方法体
转帐功能
先调用
再定义
详情需自己完成
0515 银行转帐功能演练相关推荐
- 0309随堂笔记 银行转帐功能 对向封装 1615278206
java格式化输出语句 快捷创建方法 光标移动到方法调用的地方(方法未定义) 键盘 alt + enter 弹出的选项中选择 creat- 快捷生成构造方法 按 alt + ins 在窗口中选择需要的 ...
- 从模拟切换到真实业务接管,看zCloud如何助力银行灾备演练升级
点击上方"蓝字" 关注我们,享更多干货! 近年来,随着国家和行业监管部门对银行信息系统风险管理的要求不断提高,<商业银行数据中心监管指引>和<商业银行业务连续性监 ...
- atm有10000元 java_Java实现银行ATM功能示例
Java实现银行ATM功能示例 发布时间:2020-10-28 14:42:46 来源:亿速云 阅读:71 Java实现银行ATM功能示例?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原 ...
- java简单atm_Java实现简单银行ATM功能
本文实例为大家分享了Java实现简单银行ATM功能的具体代码,供大家参考,具体内容如下 实现功能 1.用户需要通过输入银行卡号和密码才能进入ATM系统 2.用户可以在ATM中实现取款.存款.转账.余额 ...
- 速记 封装案例 银行取款功能 1210
封装小结 封装案例 编码 银行类 初始化方法 使用无参构造法 带参构造 登陆方法 显示菜单 存钱 取钱 转帐
- php 代付功能_PHP之RSA2加密解密(接入微众银行代付功能过程中使用)
近日,随着我们拼客顺风车平台用户量的逐步增大,提现的数量越来越大,人工提现到银行卡的工作量越来越大,所以准备接入微众银行的代付功能,其中涉及到php的RSA2加密加密,这里记录一下下.话不多说直接上代 ...
- 湖北联通联手银行开展网络安全演练
日前,湖北联通完成了湖北银行网络安全突发事件应急演练.本次演练由湖北联通模拟DDOS异常攻击,对湖北银行的WEB服务器.网上银行服务器等进行攻击.随后,湖北联通与湖北银行.人民银行武汉分行.湖北省通信 ...
- p2p银行充值功能模块 支付宝调用
银行充值简介 用户要想要投标的话,那么需要往p2p平台上进行充值 使用支付宝沙箱 调用支付宝充值接口进行测试 用户余额页面展示用户的余额 点击充值调用跳转到银行充值页面 输入密码,密码正确调转到支付宝 ...
- Java代码简单模仿银行ATM功能
1.首先要了解的是,这个ATM程序本身是一个简单,只为了完成一些ATM具备的一些方法,并非是真正完成一个ATM的全部功能和需求.(效果如下图) 1.这个下面演示的成功的功能: 2.这张图是输入错误的解 ...
最新文章
- Linux C程序命令行传参
- erp二次开发有出路吗_ERP的真正技术瓶颈:详细生产排程!
- Jzoj5235 好的排列
- 如何使用Google Analytics(分析)设置和跟踪YouTube频道的效果
- Win11系统创建虚拟桌面的方法
- 汽车故障检测仪计算机教程,道通MS诊断仪在线编程刷隐藏908SPRO汽车故障检测电脑...
- 2010年山东省区县级农作物面积及产量统计数据
- 韩顺平老师php从入门到精通149讲
- linux系统学文档pdf,Linux操作系统学习.pdf
- 中国8位域名大玩家曝光(域名背后的真相)
- 【网易云音乐】浏览器控制台抓包(纯前端)
- android禁用传感器,Android 系统强制禁用距离传感器方法
- 程序员有了这几款神器,瞬间逼格就上去了!
- ffmpeg 拼接mp4_通过 ffmpeg 无损剪切/拼接视频
- 可汗学院金融学(一)
- 远程开机并不难 用开机棒轻松打开局域网多台电脑
- 原生js——无法获取元素高度的的问题
- 神经网络之极限学习机(ELM)
- 入职避坑指南(杭州)
- Openssl 1024bit RSA算法---公私钥获取和处理(一)
热门文章
- 为什么先编码再解码? 即先降采样,然后上采样
- duty:用户名是手机号显示空格
- oracle9i解密rewrap,oracle 9i 的加密解密用法之dbms_obfuscation_toolkit(一)
- vue本地模拟数据之mockjs安装 - cmd篇
- 关于vue.js 编程导航的使用:实现路由配置和跳转页面
- astype强制转换不管用_用numpy和pandas进行数据分析
- c语言 a 0,[整理]C语言中的a,a和a[0]
- Java实现Spark-Redis,Spark 之 Redis on spark java.io.NotSerializableException
- 好看清新的双栏博客模板,可以用来做工作室官网,自媒体官网,个人博客,产品展示等网站。
- 好看的导航网站源码-简约自适应网站网址导航系统