Java实验3 -- 银行新用户现金业务办理

前言

    时间:2020.4.23 备注:这个实验写的我太卑微了,努力在UML和实现案例里猜测代码的逻辑,结果还是讨教了老师才明白——UML和例子只是参考,不用一模一样。。

题目

代码

//BankTest
package experiment03.task02;
import java.util.Scanner;

/**
 * @Author Hyidol
 * @Data 2020-04-23 18:47
 * @Title 银行新用户现金业务办理 测试类
 * @Detail Java实验3任务2
 */
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;
            }
        }
    }
}
//Bank.java
package experiment03.task02;
import java.util.Scanner;

/**
 * @Author Hyidol
 * @Data 2020-04-23 17:30
 * @Title 银行新用户现金业务办理
 * @Detail 银行类
 */
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("*************银行业务************
" +
                "1、存款	" + "2、取款	" + "3、查询	" + "4、退出
" +
                "********************************
" + "请选择:");
    }

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

分析和结果

对原题输出的分析

运行结果图

经验分享 程序员 微信小程序 职场和发展