Вы находитесь на странице: 1из 5

Student Name: __________________

Student ID: __________________


Total Points (50 pts) __________________

Project: The Account Class

Problem Description:
(The Account class) Design a class named Account that
contains:
A private int data field named id for the account
(default 0).
A private double data field named balance for the
account (default 0).
A private double data field named annualInterestRate
that stores the current interest rate (default 0).
Assume all accounts have the same interest rate.
A private Date data field named dateCreated that stores
the date when the account was created.
A no-arg constructor that creates a default account.
A constructor that creates an account with the
specified id and initial balance.
The accessor and mutator methods for id, balance, and
annualInterestRate.
The accessor method for dateCreated.
A method named getMonthlyInterestRate() that returns
the monthly interest rate.
A method named withdraw that withdraws a specified
amount from the account.
A method named deposit that deposits a specified amount
to the account.

Draw the UML diagram for the class. Implement the


class. Write a test program that creates an Account
object with an account ID of 1122, a balance of
$20,000, and an annual interest rate of 4.5%. Use the
withdraw method to withdraw $2,500, use the deposit
method to deposit $3,000, and print the balance, the
monthly interest, and the date when this account was
created.

Analysis:
(Describe the problem including input and output in your own words.)

1
Design:
(Draw an UML class diagram for the Account class.)

<java Class>
Test
(default package)
Test()
Main(String) []:void

<java
Id: class> int
Balance: Account Double
annualInterestRate:
(default Double
DateCreated package) Date
Account()
Account (int,double)
Getid(): int
getBalance(): double
getAnnualInterestRate(): double
setBalance(double): void
setid(int): void
setAnnualInterestRate(double) void
: Date
Get DateCreated(); Double
getMonthlyInterest(): Double
newannualInterestRate(): Void
Withdraw(double): Void
Deposit(double: String
toString():

2
Coding: (Copy and Paste Source Code here. Format your code using Courier 10pts)

public class Test {


public static void main (String[] args) {
Account account = new Account(1122, 20000);
Account.setAnnualInterestRate(4.5);

account.withdraw(2500);
account.deposit(3000);
System.out.println("Balance is " + account.getBalance());
System.out.println("Monthly interest is " +
account.getMonthlyInterest());
System.out.println("This account was created at " +
account.getDateCreated());
}
}

Class Account {

// Implement the class here


/*
* * Project 1 *
* * Student Name: Abdullah Albagshi * *
* *Date: 09-28-2019 *
*/

package ll;
public class Account {

private int id;


private double balance;
private static double annualInterestRate;
private java.util.Date dateCreated;

public Account() {
dateCreated = new java.util.Date();
}

public Account(int id, double balance){


this.id = id;
this.balance = balance;

dateCreated = new java.util.Date();


}

public int getId(){


return this.id;
}

public double getBalance(){


return balance;
}

3
public static double getAnnualInterestRate(){
return annualInterestRate;
}

public void setId(int id){


this.id = id;
}

public void setBalance(double balance){


this.balance = balance;
}

public static void setAnnualInterestRate(double


newannualInterestRate){
annualInterestRate = newannualInterestRate;
}

public double getMonthlyInterest(){


return balance * (annualInterestRate / 1200);
}

public java.util.Date getDateCreated(){


return dateCreated;
}

public void withdraw(double amount){


balance -= amount;
}

public void deposit(double amount){


balance += amount;
}
}

Testing: (Describe how you test this program)

Balance is 20500.0
Monthly interest is 76.875
This account was created at Thu Sep 29 17:16:00 CDT 2016

4
Submit the following items:

1. Fill in the empty place.

2. The above Testing, coding, design, analysis.

3. Show the output of this project codes.

Compile, Run, and Submit them to online (you must submit the program regardless
whether it complete or incomplete, correct or incorrect)

Вам также может понравиться