簡體   English   中英

如何使用 transferTo() 方法在賬戶之間轉賬?

[英]How do I use the transferTo() method to transfer money between accounts?

我應該添加以下方法以允許 BankAccounts 將錢轉移到另一個 BankAccount。 我應該在哪里添加此方法以確保它適用於所有 BankAccount,包括 SavingsAccount 和 CheckingAccount?

我應該使用的方法是transferTo(BankAccount destinationAccount, int transferAmount)

public class BankAccount {


private String accountHolderName;
private String accountNumber;
private int balance;

public BankAccount(String accountHolder, String accountNumber) {
    this.accountHolderName = accountHolder;
    this.accountNumber = accountNumber;
    this.balance = 0;
}

public BankAccount(String accountHolder, String accountNumber, int balance) {
    this.accountHolderName = accountHolder;
    this.accountNumber = accountNumber;
    this.balance = balance;
}

public String getAccountHolderName() {
    return accountHolderName;
}

public String getAccountNumber() {
    return accountNumber;
}

public int getBalance() {
    return balance;
}

// Update the balance by using the DollarAmount.Plus method
public int deposit(int amountToDeposit) {
    balance = balance + amountToDeposit;
    return balance;
}

// Update the balance by using the DollarAmount.Minus method
public int withdraw(int amountToWithdraw) {
    balance = balance - amountToWithdraw;
    return balance;
}

public int transferTo(BankAccount destinationAccount, int transferAmount) {

    return balance;

}

}

假設:

  1. 這只是一個練習,而不是銀行的實際應用。
  2. SavingsAccount 和 CheckingAccount 是 BankAccount 的子類

transferTo 方法可以如下實現:

public int transferTo(BankAccount destinationAccount, int transferAmount) {
    this.balance -= transferAmount;
    destinationAccount.deposit(transferAmount);
    return balance;
}

在現實世界的應用程序中,您需要確保此操作始終是原子的和線程安全的。 此外,強烈不建議使用int進行天平。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM