import jdk.internal.dynalink.beans.StaticClass;
import javax.xml.ws.Service;
import java.util.Scanner;
public class bank1 {//银行客户端
static Scanner s = new Scanner(System.in);
//创建对象调用构造函数,完成一些初始值的赋值
static bank b = new bank("123456", "刘铭", 3.1415, "中国建设银行");
public static void main(String[] args) {
b.welcome();//先展示问候语句
Service();//开始提供服务
}
public static void Service() {
System.out.println(b.pername + "先生,想要查询目前余额请按“1”," + "想要存款请按”2“,想要取款请按”3“,退出请按”4“。");
int i = s.nextInt();
if (i == 1) {
b.Query();//查询余额
Service();//本次服务完毕继续询问是否需要其他服务
}
if (i == 2) {
b.savemoney();//存钱
Service();//本次服务完毕继续询问是否需要其他服务
}
if (i == 3) {
b.darwmoney();//取钱
Service();//本次服务完毕继续询问是否需要其他服务
}
if (i == 4)
b.withdraw();//如果选择了4就退出服务
}
}
class bank {//银行服务端实现具体服务
public String bankname;//银行名字
public String pername;//账户名字
public String password;//密码
public double balance;//余额
Scanner s = new Scanner(System.in);
public bank(String password, String pername, double balance, String bankname) {//构造函数
this.balance = balance;//账户余额
this.password = password;///账户密码
this.pername = pername;//账户名字
this.bankname = bankname;
}
public void welcome() {
System.out.println("¥¥¥¥¥¥¥¥¥欢迎来到" + bankname + "!¥¥¥¥¥¥¥¥¥");
}
public void hello() {
System.out.println(this.pername + "先生,想要查询目前余额请按“1”,"
+ "想要存款请按”2“,想要取款请按”3“,退出请按”4“。");
}
public void Query() {
System.out.println("目前您的余额为:" + this.balance + "元。");
}
public void savemoney() {//存款函数
System.out.println("请您输入账户密码:");
String a = s.next();//键盘输入密码
if (this.password.equals(a)) {//密码正确才可以输入存款金额
System.out.println("请输入您的存入金额:");
double c = s.nextDouble();//从键盘输入数值
balance += c;
System.out.println(pername + "先生,您存入金额为:" + c + "元" + "\n当前余额为:" + balance + "元");
} else {//如果密码错误
System.out.println("密码错误,请重新输入密码:");
this.savemoney();//再次调用存款方法
}
}
public void darwmoney() {//取款函数
System.out.println("请您输入账户密码:");
String a = s.next();//键盘输入密码
if (this.password.equals(a)) {//密码正确才可以输入存款金额
System.out.println("请输入您需要取出的金额:");
double c = s.nextDouble();
if (balance > c) {//如果取款金额小于当前余额
balance -= c;//当前余额等于余额减去取款
System.out.println(pername + "先生您的账户已经取出金额:" + c + "元,当前账户余额为:" + balance + "元");
} else {//如果取款金额大于余额
System.out.println(pername + "先生,您的账户余额不足!如果想重新设置取款金额请按1,如果想放弃取款请按2:");
double d = s.nextDouble();
if (d == 1)//如果继续取款
darwmoney();//直接调用本方法并且参数为真
else//如果退出取款则退出本方法
return;
}
} else//如果密码错误
{
System.out.println("您输入的账号密码错误,请重新输入:");
this.darwmoney();//再次调用取钱方法
}
}
public void withdraw() {
System.out.println(pername + "!别睡了,东边的厕所还没洗呢!");
}
}
运行的结果:
¥¥¥¥¥¥¥¥¥欢迎来到中国建设银行!¥¥¥¥¥¥¥¥¥
刘铭先生,想要查询目前余额请按“1”,想要存款请按”2“,想要取款请按”3“,退出请按”4“。
1
目前您的余额为:3.1415元。
刘铭先生,想要查询目前余额请按“1”,想要存款请按”2“,想要取款请按”3“,退出请按”4“。
2
请您输入账户密码:
123456
请输入您的存入金额:
520
刘铭先生,您存入金额为:520.0元
当前余额为:523.1415元
刘铭先生,想要查询目前余额请按“1”,想要存款请按”2“,想要取款请按”3“,退出请按”4“。
3
请您输入账户密码:
123456
请输入您需要取出的金额:
999
刘铭先生,您的账户余额不足!如果想重新设置取款金额请按1,如果想放弃取款请按2:
1
请您输入账户密码:
123456
请输入您需要取出的金额:
13.14
刘铭先生您的账户已经取出金额:13.14元,当前账户余额为:510.00149999999996元
刘铭先生,想要查询目前余额请按“1”,想要存款请按”2“,想要取款请按”3“,退出请按”4“。
4
刘铭!别睡了,东边的厕所还没洗呢!