前言
- 时间:2020.4.23
- 备注:这个实验写的我太卑微了,努力在UML和实现案例里猜测代码的逻辑,结果还是讨教了老师才明白——UML和例子只是参考,不用一模一样。。
题目
代码
package experiment03.task02;
import java.util.Scanner;
public class BankTest {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("请输入用户名:");
String idName = scan.next();
System.out.print("请输入密码:");
String idPass = scan.next();
Bank bank = new Bank(idName,idPass,0);
while(true){
bank.Fun();
int key = scan.nextInt();
switch (key){
case 1:
bank.Deposit();
break;
case 2:
bank.Withdrawal();
break;
case 3:
bank.Search();
break;
case 4:
bank.Goodbye();
break;
}
}
}
}
package experiment03.task02;
import java.util.Scanner;
public class Bank extends BankTest {
Scanner scan = new Scanner(System.in);
static String bankName = "招商银行";
String name;
String password;
double balance;
Bank(String name,String password,double balance){
this.name = name;
this.password = password;
this.balance = balance;
System.out.println("欢迎" + this.name + "来到" + bankName +"!");
System.out.println(this.name + "开户成功,账户余额" + balance + "元");
}
void Deposit(){
System.out.print("请输入存款金额:");
double moneyIn= scan.nextDouble();
balance += moneyIn;
System.out.println(name + "您好!您的账户已存入" + moneyIn + "元,当前账户余额" + balance + "元。");
}
void Withdrawal(){
System.out.print("请输入取款密码:");
String passIn = scan.next();
if(passIn.equals(password)){
System.out.print("请输入取款金额:");
double moneyOut = scan.nextDouble();
balance -= moneyOut;
System.out.println(name + "您好!您的账户已取出" + moneyOut + ",当前账户余额" + balance + "元。");
} else {
System.out.println("密码错误!");
}
}
void Search(){
System.out.println(name + "您好!当前账户余款" + balance + "元。");
}
void Goodbye(){
System.out.println("请携带好随身财物,欢迎下次光临"+ bankName + "!");
System.exit(0);
}
void Fun(){
System.out.print("*************银行业务************\n" +
"1、存款\t" + "2、取款\t" + "3、查询\t" + "4、退出\n" +
"********************************\n" + "请选择:");
}
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 double getBalance() {
return balance;
}
public void setBalance(double balance) {
this.balance = balance;
}
}
分析和结果
对原题输出的分析
运行结果图