package ATM;
import java.io.BufferedReader;
import java.io.InputStreamReader;
class Account{ private String number=null; private String name=null; private String password=null; private double money=0.0; public Account(String number,String name,String password,double money) { this.number=number; this.name=name; this.password=password; this.money=money; }
public String getNumber() { return number; }
public String getName() { return name; }
public String getPassword() { return password; }
public double getMoney() { return money; }
protected void sub_Balance(double mon) { money-=mon; } protected void add_Balance(double mon) { money+=mon; } }
class ATM { Account act; public ATM() { act=new Account("000", "test", "111", 5000); } protected void Welcome() { String str="------------------------"; System.out.print(str+"\n"); System.out.println("1.取款。"+"\n"+ "2.查询。"+"\n"+ "3.存款."+"\n"+ "4.退出系统."+"\n"); System.out.println(str+"\n"); } protected void Load_Sys() throws Exception { String card,pwd; int counter=0; BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); do { System.out.println("请输入您的卡号"); card=br.readLine(); System.out.println("请输入您的密码"); pwd=br.readLine(); if(!isRight(card,pwd)) { System.out.println("您的卡号或密码输入有误。"); counter++; } else SysOpter(); } while (counter<3); System.exit(1); } protected void SysOpter() throws Exception { int num; BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); System.out.println("请选择您要操作的项目(1-4):"); num=br.read(); switch(num) { case 49:GetBalance();break; case 50:Inqu_Info();break; case 51:AddBalance();break; case 52:Exit_Sys();break; } System.exit(1); } protected void Inqu_Info()throws Exception { System.out.println("-------------------------\n"+ "账户:"+act.getNumber()+"\n"+ "姓名:"+act.getName()+"\n"+ "余额:"+act.getMoney()+"\n"+ "----------------------\n"); SysOpter(); } public void GetBalance()throws Exception { String str=null,str1; BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); do{ System.out.println("请输入取款数目:"); str=br.readLine(); double qu=Double.valueOf(str).doubleValue(); if(qu>act.getMoney()) { System.out.println("余额不足,请重新输入您要取的数目:"); } else { act.sub_Balance(qu); System.out.println("取款成功,您的账户余额为:"+act.getMoney()); Welcome(); SysOpter(); } }while(true); } public void AddBalance()throws Exception { String str=null,str1; BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); do { System.out.println("请输入存款数目"); str=br.readLine(); double qu=Double.valueOf(str).doubleValue(); act.add_Balance(qu); System.out.println("存款成功,您的账户余额为:"+act.getMoney()); Welcome(); SysOpter(); }while(true); } protected boolean isBalance() { if(act.getMoney()<0) { return false; } return true; } protected boolean isRight(String card,String pwd) { if(act.getNumber().equals(card)&&act.getPassword().equals(pwd)) return true; else return false; } protected void Exit_Sys(){ System.out.println("感谢您使用本系统,再见!"); System.exit(1); } } public class Test { public static void main(String[] args)throws Exception { ATM atm=new ATM(); atm.Welcome(); atm.Load_Sys(); }
- 在Jmeter中使用自定义编写的Java测试代码
我们在做性能测试时,有时需要自己编写测试脚本,很多测试工具都支持自定义编写测试脚本,比如LoadRunner就有很多自定义脚本的协议,比如"C Vuser","Java ...
- 自定义编写jmeter的Java测试代码
我们在做性能测试时,有时需要自己编写测试脚本,很多测试工具都支持自定义编写测试脚本,比如LoadRunner就有很多自定义脚本的协议,比如"C Vuser","JavaV ...
- 科大讯飞语音转文字以及中文分词的Java测试代码
我录了一段音存储在这个test.m4a文件里,语音内容为"测试一下Netweaver对于并发请求的响应性能". 使用如下Java代码进行测试: package com.iflyte ...
- MongoDB之Java测试代码(DAO层)
MongoInit.java是数据库初始化及连接类 MongoUtils.java是对mongodb的各种操作方法 MongoInit.java package com.wlwcloud.datate ...
- 自学Java测试代码二String, StringBuffer
2017-08-23 10:38:01 writer:pprp package test; import java.util.*; public class test2 { public static ...
- 自学Java测试代码 - 简单地Student类
2017-08-23 23:45:38 writer:pprp 写这个还蛮开心的 package test; public class Student { //创建成员变量 String name ...
- 自学Java测试代码一数据类型、数组使用
2017-08-22 21:23:37. writer:pprp package test; public class helloWorld { int maxn = 123; //常量,需要定义一个 ...
- Android网络传输中必用的两个加密算法:MD5 和 RSA (附java完成测试代码)
MD5和RSA是网络传输中最常用的两个算法,了解这两个算法原理后就能大致知道加密是怎么一回事了.但这两种算法使用环境有差异,刚好互补. 一.MD5算法 首先MD5是不可逆的,只能加密而不能解密.比如明 ...
- Java&Selenium自动化测试实现页面元素、页面对象及测试代码分离
一.摘要 本篇博文将介绍自动化测试实现页面元素.页面对象及测试代码分离在自动化框架中的实现 二.解析页面元素定位信息 首先,将页面元素与实际的代码分离,首先我们将页面元素定位信息和定位表达式保存在属性 ...
随机推荐
- zsh,oh-my-zsh,antigen使用记录
关于 'zsh': 又名 z shell,‘z' 是26个字母中的最后一位,故取意为“终极终端”. 关于 'oh-my-zsh': 是一个针对zsh的模板化的z shell配置脚本,目标是配置一个好用 ...
- Java基础_0307:String类的基本概念
String类的两种实例化方式 直接赋值: String str = "www.YOOTK.com"; 构造方法: 构造方法:public String(String str),在 ...
- 【blog】SpringMVC返回RSS格式的XML数据
代码 import com.sun.syndication.feed.rss.Channel; import com.sun.syndication.feed.rss.Content; import ...
- 使用AOP思想无侵入式申请权限,解决组件化中权限问题(一)
首先介绍AspectJx使用 https://github.com/HujiangTechnology/gradle_plugin_android_aspectjx 在根项目的build.gradle ...
- Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields(翻译)
0 - Abstract 我们提出了一种方法去在一张图片中有效地识别多个人体的2D姿势.这个方法使用了一个无参数表示法,我们将其叫为Part Affinity Fields(PAFs),其是去在图片中 ...
- ubuntu14.04升级mysql5.5至mysql5.7
原文链接:https://www.cnblogs.com/os-python/p/6842485.html 1.下载mysql-apt的配置包,并安装 wget https://dev.mysql.c ...
- oracle坏块问题的处理
一.背景 今天有用户反映数据库连不上了,查看日志发现有数据库坏块. 查看数据库日志,有如下报错: ORA-01578: ORACLE , 93642) ORA-01110: 1: '/oracle/a ...
- 安装mysql8.0.12以及修改密码和Navicat的连接
mysql8.0+与安装其他版本不同一.安装mysql8.0.121.到官网https://www.mysql.com/ 下载mysql-8.0.12-winx64.zip(不要.mis),直接解压 ...
- 管理并行SQL执行的进程
本节介绍的并行执行功能可用于Oracle数据库企业版 本节介绍如何管理SQL语句的并行处理.在此配置中,Oracle数据库可以将处理SQL语句的工作分为多个并行进程. 许多SQL语句的执行可以并行化. ...
- 全面接触PDF:最好用的PDF软件汇总(转)
全面接触PDF:最好用的PDF软件汇总(2010-12-07更新): http://xbeta.info/pdf-software.htm 比较全面的c#帮助类,各种功能性代码: https://gi ...