Big Java example project "purse"

You can use this project as follows:

 - invoke the main method of the driver class InvestmentTest by right-clicking 
 on the class representation and selecting the main method.
 - interactively create Investment objects of differing balances and rates of interest
 - call the waitForBalance method of each object specifying the target balance for the account
 - then call the getYears method to find out the projected time to reach target balance
 - use BlueJ's inspection capabilities to watch change of internal state after each call

Note: Sometimes in BlueJ a dialog (such as input dialog or file chooser)
 appears right at the back of any open windows.  If you cannot see
 a dialog after calling the Driver class main method, minimize any 
 other windows to find the dialog.

 
This project illustrates concepts covered in Big Java, Chapter 7 
"Designing Classes".
  
 -to learn how to choose appropriate classes to implement
 -to understand the concepts of cohesion and coupling
 -to minimize the use of side effects
 -to document the responsibilities of methods and their callers with preconditions and postconditions
 -to understand the difference between instance methods and static methods
 -to introduce the concept of static fields
 -to understand the scope rules for local variables and instance fields

