previous | start | next

File Investment.java

1 /**
2     A class to monitor the growth of an investment that 
3     accumulates interest at a fixed annual rate
4 */
5 public class Investment
6 {
7    /**
8        Constructs an Investment object from a starting balance and
9        interest rate.
10       @param aBalance the starting balanece
11       @param aRate the interest rate in percent
12     */
13    public Investment(double aBalance, double aRate)
14    {
15       balance = aBalance;
16       rate = aRate;
17       years = 0;
18    }
19
20    /**
21        Keeps accumulating interest until a target balance has
22        been reached.
23       @param targetBalance the desired balance
24     */
25    public void waitForBalance(double targetBalance)
26    {
27       while (balance < targetBalance)
28       {
29          years++;   
30          double interest = balance * rate / 100;
31          balance = balance + interest;
32       }
33    }
34
35    /**
36        Gets the current investment balance.
37       @return the current balance
38     */
39    public double getBalance()
40    {
41       return balance;
42    }
43
44    /**
45        Gets the number of years this investment has accumulated
46        interest.
47       @return the number of years since the start of the investment
48     */
49    public int getYears()
50    {
51       return years;
52    }
53
54    private double balance;
55    private double rate;
56    private int years;
57 }


previous | start | next