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(); } 

Java测试代码(很不完整,建议大家别看,过几天会再发一次难的版本)的更多相关文章

  1. 在Jmeter中使用自定义编写的Java测试代码

    我们在做性能测试时,有时需要自己编写测试脚本,很多测试工具都支持自定义编写测试脚本,比如LoadRunner就有很多自定义脚本的协议,比如"C Vuser","Java ...

  2. 自定义编写jmeter的Java测试代码

    我们在做性能测试时,有时需要自己编写测试脚本,很多测试工具都支持自定义编写测试脚本,比如LoadRunner就有很多自定义脚本的协议,比如"C Vuser","JavaV ...

  3. 科大讯飞语音转文字以及中文分词的Java测试代码

    我录了一段音存储在这个test.m4a文件里,语音内容为"测试一下Netweaver对于并发请求的响应性能". 使用如下Java代码进行测试: package com.iflyte ...

  4. MongoDB之Java测试代码(DAO层)

    MongoInit.java是数据库初始化及连接类 MongoUtils.java是对mongodb的各种操作方法 MongoInit.java package com.wlwcloud.datate ...

  5. 自学Java测试代码二String, StringBuffer

    2017-08-23 10:38:01 writer:pprp package test; import java.util.*; public class test2 { public static ...

  6. 自学Java测试代码 - 简单地Student类

    2017-08-23  23:45:38 writer:pprp 写这个还蛮开心的 package test; public class Student { //创建成员变量 String name ...

  7. 自学Java测试代码一数据类型、数组使用

    2017-08-22 21:23:37. writer:pprp package test; public class helloWorld { int maxn = 123; //常量,需要定义一个 ...

  8. Android网络传输中必用的两个加密算法:MD5 和 RSA (附java完成测试代码)

    MD5和RSA是网络传输中最常用的两个算法,了解这两个算法原理后就能大致知道加密是怎么一回事了.但这两种算法使用环境有差异,刚好互补. 一.MD5算法 首先MD5是不可逆的,只能加密而不能解密.比如明 ...

  9. Java&Selenium自动化测试实现页面元素、页面对象及测试代码分离

    一.摘要 本篇博文将介绍自动化测试实现页面元素.页面对象及测试代码分离在自动化框架中的实现 二.解析页面元素定位信息 首先,将页面元素与实际的代码分离,首先我们将页面元素定位信息和定位表达式保存在属性 ...

随机推荐

  1. CCSprite使用记录

    CCSprite使用需要CCTexture2D,就是需要纹理.可以设置绘制纹理的区域. CCSprite 有 draw方法 ,由CCDirector/mainLoop()调用(当前使用的场景为根,向下 ...

  2. Java基础_0302:类和对象

    定义类 class Book { // 定义一个新的类 String title; // 书的名字 double price; // 书的价格 /** * 输出对象完整信息 */ public voi ...

  3. whatis命令,一个非常有用的命令

    比如我不知道yum的配置文件yum.conf怎么用,就可以whatis yum.conf,

  4. scrapy基础 之 xpath网页结构

    1 ,什么是xpath XPath 是一门在 XML 文档中查找信息的语言.XML是一种类似于HTML的传输协议 2,节点 XPath 中,有七种类型的节点:元素.属性.文本.命名空间.处理指令.注释 ...

  5. 20165237 2017-2018-2 《Java程序设计》第6周学习总结

    20165237 2017-2018-2 <Java程序设计>第6周学习总结 教材学习内容总结 1.String类的常用方法: public int length() public boo ...

  6. nginx基础命令

    1.nginx 启动nginx service nginx start 查看nginx状态 service nginx status 关闭nginx service nginx stop 热重启(前提 ...

  7. 手写代码 - java.lang.String/StringBuilder 相关

    语言:Java 9-截取某个区间的string /** * Returns a string that is a substring of this string. The * substring b ...

  8. flask与数据库连接相关操作

    ---恢复内容开始--- 首先要安装  flask-sqlalchemy 数据库连接设置 在flask-SQLAlchemy中,数据库使用URL指定,而且程序使用的数据库必须保存到flask配置对象的 ...

  9. Unity3D之通过C#使用Advanced CSharp Messenger

    Advanced CSharp Messenger 属于C#事件的一种. 维基百科中由详细的说明http://wiki.unity3d.com/index.php?title=Advanced_CSh ...

  10. bigfile tablespace

    背景       这次终于有个linux实际迁移oracle的机会了,之前都是学习实验.想起最早时,都是windows搞oracle,又让我想起多年期一个项目,数据量太大及计算逻辑太复杂,我用存储过程 ...