Perhaps this will provide a clear picture
package banking;
public class Customer{
private
String firstName;
private String lastName;
private Account account;
Account accounts[];
int numberOfAccounts = 0;
public Customer(){
accounts = new Account[100];
}
public void addAccount(Account a){
System.out.println(a);
//account = a;
//accounts[numberOfAccounts++] = account;
//accounts[numberOfAccounts++] = new Account(a);
//accounts[numberOfAccounts++] = a;
}
public int getNumOfAccounts(){
return numberOfAccounts;
}
public Account getAccount(int ac){
return accounts[ac];
}
public Customer(String f,String l){
firstName = f;
lastName = l;
}
public String getFirstName(){
return firstName;
}
public String getLastName(){
return lastName;
}
public Account getAccount(){
return account;
}
public void setAccount(Account acct){
account = acct;
}
};
and
/*
* This class creates the program to test the banking classes.
* It creates a set of customers, with a few accounts each,
* and generates a report of current account balances.
*/
import banking.*;
import java.text.NumberFormat;
public class TestBanking {
public static void main(String[] args) {
NumberFormat currency_format = NumberFormat.getCurrencyInstance();
Bank bank = new Bank();
Customer customer;
// Create several customers and their accounts
bank.addCustomer("Jane", "Simms");
customer = bank.getCustomer(0);
customer.addAccount(new SavingsAccount(500.00, 0.05));
customer.addAccount(new CheckingAccount(200.00, 400.00));
bank.addCustomer("Owen", "Bryant");
customer = bank.getCustomer(1);
customer.addAccount(new CheckingAccount(200.00));
bank.addCustomer("Tim", "Soley");
customer = bank.getCustomer(2);
customer.addAccount(new SavingsAccount(1500.00, 0.05));
customer.addAccount(new CheckingAccount(200.00));
bank.addCustomer("Maria", "Soley");
customer = bank.getCustomer(3);
// Maria and Tim have a shared checking account
customer.addAccount(bank.getCustomer(2).getAccount(1));
customer.addAccount(new SavingsAccount(150.00, 0.05));
// Generate a report