我正在爲基本模擬銀行系統的類(我們正在使用類中的併發性工作,因此我們需要爲本學期的其餘部分創建主幹)進行分配。我遇到的問題是創建一個名爲Transaction
的抽象類,它實現了一系列與不同類型事務相關的不同方法的接口。然後,我們必須爲每種交易類型(即AccountNumberInquiry,AccountBalanceInquiry,AccountWithdrawal等)創建Transaction類的子類。子類,抽象和繼承
我的問題是我在正確的軌道還是我理解這一切都錯了?
Transaction.java
public abstract class Transaction implements TransactionInterface {
private Account account;
public Transaction(Account account) {
this.account = account;
}
}
TransactionInterface.java
public interface TransactionInterface {
public int getAccountNumber();
public void makeTransfer();
public boolean makeWithdrawal();
public double getAccountBalance();
public void makeDeposit();
}
AccountTransfer.java(只是交易的一個例子的子類)
public class AccountTransfer extends Transaction {
private Account account;
public AccountTransfer(Account account) {
super(account);
this.account = account;
}
public void makeTransfer(Account toAccount, double amount) {
AccountWithdrawal withdrawal = new AccountWithdrawal(account);
if(withdrawal.makeWithdrawl(amount) == true) {
// transfer to other account
} else {
// prompt error
}
}
}
我需要@Override
我的AccountTransfer
類中的接口方法是否正確?只有一大堆東西令我困惑。
爲什麼你需要兩個'Account'字段?在'Transaction'' protected'中創建一個,並在子類中重新使用它。 –
如果你有一個類,它不是'abstract',實現一個接口或者擴展一個'abstract'類,它需要爲所有繼承的'abstract'方法實現一個實現(包括接口,它們隱含地是'abstract ' –
我想我只是在想這個問題。 – pattmorter