Java Reference
In-Depth Information
so forth. The class contains all the necessary getter/setter methods, but we do not
show all methods, for lack of space.
The bank must maintain records of transactions. For this purpose, we define
class Transaction , also in Fig. 12.13. An instance of this class maintains the
account number, the kind of the transaction, and the amount of the transaction.
We must modify methods deposit and withdraw in class BankAccount to
create instances of class Transaction , but first, we discuss the structure of this
program. Class Transaction is in its own file and is public, so the user of this
bank-account program sees it and can reference it. The principle of information
hiding (see Sec. 3.1.1) would have us hide class Transaction since the user does
/** A bank account */
public class BankAccount {
/** a ccount number, amount in account, and last transaction carried out
("deposit" or "withdrawal") */
private int account;
private int balance;
private Transaction lastTransaction;
// Getter and setter methods omitted.
/** Deposit amount in this account */
public void deposit( int amount)
{ balance= balance + amount; }
/** Withdraw amount from this account */
public void withdraw( int amount)
{ balance= balance - amount; }
}
/** An instance is a bank-account transaction */
public class Transaction {
/** account number, type of transaction ( "deposit" , "withdrawal"), and amount */
int account;
String transaction;
int amount;
/** Constructor: instance for account a , kind t , and amount n */
public Transaction( int a, int n, String t)
{ account= a; transaction= t; amount= n; }
/** representation of this transaction */
public String toString()
{ return account + ": " + transaction + " " + amount; }
}
Figure 12.13:
Classes BankAccount and Transaction (in separate files)
Search WWH ::




Custom Search