Account a1 = new Account("Bob Smith");
a1.printInfo();
a1.increaseSpace(256);
EmailAccount ea1 = new EmailAccount("Jane Forester", "jane@abc.com", 32);
ea1.printInfo();
ea1.increaseSpace(256);
Account a2 = ea1;
a2.printInfo();
a2.increaseSpace(256);
EmailAccount ea2 = (EmailAccount)a2;
ea2.printInfo();
ea2.increaseSpace(256);
public abstract class Account {
protected String holder;
public Account(String holder) {
this.holder = holder;
}
public void printInfo() {
System.out.println("Account Holder: " + holder);
}
}
public class EmailAccount extends Account {
private String address;
private int storagespace;
public EmailAccount(String holder, String address, int storagespace) {
super(holder);
this.address = address;
this.storagespace = storagespace;
}
public void printInfo() {
super.printInfo();
System.out.println("Address: " + address);
}
public void increaseSpace(int amount) {
storagespace += amount;
}
}
Date: 2007-09-26