综合实例 Account_Customer_Bank

2021-12-13  本文已影响0人  OmewSPG
  1. 按照如下的 UML 类图,创建相应的类,提供必要的结构


    image.png

    在提款方法 withdraw()中,需要判断用户余额是否能够满足提款数额的要求,如果不能,
    应给出提示。deposit()方法表示存款。

package BankTest;

public class Account {
    private double balance;

    // 构造器
    public Account() {

    }

    public Account(double balance) {
        this.balance = balance;
    }

    // 方法
    public double getBalance() {
        return balance;
    }

    public void deposit(double amt) {
        this.balance += amt;
    }

    public void withdraw(double amt) {
        if (this.balance >= amt) {
            this.balance -= amt;
        } else {
            System.out.println("ERROR:余额不足");
        }
    }

}

  1. 按照如下的 UML 类图,创建相应的类,提供必要的结构


    image.png
package BankTest;

public class Customer {
    private String firstName;
    private String lastName;
    private Account account;
    
    // 构造器
    public Customer() {

    }
    
    public Customer(String firstName, String lastName) {
        this.firstName = firstName;
        this.lastName = lastName;
    }
    
    // 方法
    public Account getAccount() {
        return account;
    }

    public void setAccount(Account account) {
        this.account = account;
    }

    public String getFirstName() {
        return firstName;
    }

    public String getLastName() {
        return lastName;
    }

}

  1. 按照如下的 UML 类图,创建相应的类,提供必要的结构


    image.png
package BankTest;

public class Bank {
    private Customer[] customer;   // 声明数组customer,用来存储多个用户
    private int numberOfCustomer;   // 用来记录存储用户数量
    
    // 构造器
    public Bank() {
        customer = new Customer[10];    // 在构造器初始化一个对象时,就创建一个具有十个元素的数组
    }
    
    // 方法

    public Customer getCustomer(int index) {
//      return customer[index];
        if(index >= 0 && index < this.numberOfCustomer){
            return customer[index];
        }else{
            return null;
        }
        
    }

    public int getNumberOfCustomer() {
        return numberOfCustomer;
    }
    
    public void addCustomer(String f,String l){
        Customer c = new Customer(f,l);
        this.customer[this.numberOfCustomer] = c;
        this.numberOfCustomer++;
    }
    
}

  1. 创建 BankTest 类,进行测试。
package BankTest;

public class Test {
    public static void main(String[] args) {
        Bank b = new Bank();
        
        b.addCustomer("Ikeda", "Kana");
        b.getCustomer(0).setAccount(new Account(2000));
        b.getCustomer(0).getAccount().withdraw(1200);
        System.out.println(b.getCustomer(0).getAccount().getBalance());     // 800;
        
        b.addCustomer("Omew", "SPG");
        b.addCustomer("Jack", "Black");
        
        System.out.println(b.getNumberOfCustomer());     // 3
        for(int i = 0; i < b.getNumberOfCustomer(); i++){
            System.out.println(b.getCustomer(i).getFirstName() + " " + b.getCustomer(i).getLastName());
        }
        
    }
}

上一篇 下一篇

猜你喜欢

热点阅读