Question

In: Computer Science

Design a class named Account that contains: A private String data field named accountNumber for the...

Design a class named Account that contains:

A private String data field named accountNumber for the account (default AC000).

A private double data field named balance for the account (default 0).

A private double data field named annualIntRate 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 account number and initial balance.

The accessor and mutator methods for accountNumber, balance, and annualIntRate

The accessor method for dateCreated. A method named getMonthlyIntRate() that returns the monthly interest rate (see note below).

A method named getMonthlyInt() that returns the monthly interest (see note below).

A method named withdraw that withdraws a specified amount from the account, do not allow withdrawing and give appropriate message if the withdraw amount is more than the balance.

A method named deposit that deposits a specified amount to the account, do not allow depositing if the amount is negative. Write java codes for the class. Note that you need to write java codes for all methods except the following methods: getMonthlyIntRate(), and getMonthlyInt(). However, for these two methods you need to write method header.

Write a test program that creates an Account object with an account number of AC1111, a balance of $25,000, and an annual interest rate of 3.5. Use the withdraw method to withdraw $3,500, use the deposit method to deposit $3,500, and print the balance, the monthly interest, and the date when this account was created

Solutions

Expert Solution

The following code consists of a Account Class which has data fields as accountNumber , balance , annualIntRate and dateCreated ..and two constructors as default and parameterised constructor ..and various accessor and mutator methods for the data fields ..also consists of withdraw , deposist functions and getMonthlyInt and getMonthIntRate whose function definiton has been assumed.

Code snippet and Screenshot

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package bank;

import java.util.Date;

/**
 *
 * @author vijay
 */

class Account{
    private String accountNumber;//stores the account number
    private double balance;//stores the balance
    private double annualIntRate;//stores the annual interest rate
    private Date dateCreated ;//stores the date created
    
    Account()//NO argument constructor
    {
        accountNumber="AC000";//set account number to default value
        balance=0;//set default balance
        annualIntRate=0;//set annualIntRate as default
        dateCreated=new Date();//initialize date as current date
    }
    Account(String accountNumber,double balance)//Parameterised constructor
    {
        this.accountNumber=accountNumber;//initialise accountNumber
        this.balance=balance;//initialise balance
       annualIntRate=3.5;//set annualIntRate to 3.5 as given in question
       dateCreated=new Date();//initialize date as current date
    }
    String getAccountNumber() //accessor method for accountNumber
    {
        return accountNumber;
    }
    double getBalance()//accessor method for balance
    {
        return balance;
    }
    double getAnnualIntRate()//accessor method for annualIntRate
    {
        return annualIntRate;
    }
    Date getDateCreated()//accessor method for dateCreated
    {
        return dateCreated;
    }
    void setAccountNumber(String accountNumber)//mutator method for accountNumber
    {
        this.accountNumber=accountNumber;
    }
    void setBalance(double balance)//mutator method for balance
    {
        this.balance=balance;
    }
    void setAnnualIntRate(double annualIntRate)//mutator method for annualIntRate
    {
        this.annualIntRate=annualIntRate;
    }
    
    double getMonthlyIntRate()//returns the monthly interest rate
    {
        return annualIntRate/12;//assumed the definition
    }
    double getMonthlyInt()//returns the monthly interest
    {
        return ((annualIntRate)/1200)*balance;//assumeed the definition
    }
    void withdraw(double amount)//withdraws a particular amount from account
    {
        if(amount>balance)//check if amount exceeds balance
        {
            System.out.println("Insufficient balance");//notify the user
        }
        else
        {
            balance-=amount;//deduct the amount from balance
            System.out.println("Successfully withdrawed "+amount);//notify the user
        }
    }
    void deposit(double amount)//deposits a particular amount in account
    {
       if(amount<=0)//check if amount is negative
       {
           System.out.println("amount deposited must be greater than 0");//notify the user
       }
       else
       {
           balance+=amount;//add the amount in balance
            System.out.println("Successfully deposited "+amount);//notify the user
       }
    }
    
    
}

public class Bank {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        
        //Input as given in question
   Account accn=new Account("AC1111",25000);
   double withdrawalAmount=3500;
   accn.withdraw(withdrawalAmount);
   double deposited=3500;
   accn.deposit(deposited);
   System.out.println("Balance :"+ accn.getBalance()+"\nMonthly interest :"+accn.getMonthlyInt()+"\nAccount created on :"+accn.getDateCreated());
    
    
    }
    
}

Screenshot


Related Solutions

Java - Design a class named Account that contains: A private String data field named accountNumber...
Java - Design a class named Account that contains: A private String data field named accountNumber for the account (default AC000). A private double data field named balance for the account (default 0). A private double data field named annualIntRate 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....
Design a class named Account that contains: A private int data field named id for the...
Design a class named Account that contains: A private int data field named id for the account. A private double data field named balance for the account. A private double data field named annualInterestRate that stores the current interest rate. A no-arg constructor that creates a default account with id 0, balance 0, and annualInterestRate 0. The accessor and mutator methods for id, balance, and annualInterestRate. A method named getMonthlyInterestRate() that returns the monthly interest rate. A method named withdraw(amount)...
THIS IS JAVA PROGRAMMING Design a class named Account (that contains 1. A private String data...
THIS IS JAVA PROGRAMMING Design a class named Account (that contains 1. A private String data field named id for the account (default 0). 2. A private double data field named balance for the account (default 0). 3. A private double data field named annualInterestRate that stores the current interest rate (default 0). 4. A private Date data field named dateCreated that stores the date when the account was created. 5. A no-arg constructor that creates a default account. 6....
7.3 (The Account class) Design a class named Account that contains: ■ A private int data...
7.3 (The Account class) Design a class named Account that contains: ■ A private int data field named id for the account. ■ A private float data field named balance for the account. ■ A private float data field named annualInterestRate that stores the current interest rate. ■ A constructor that creates an account with the specified id (default 0), initial balance (default 100), and annual interest rate (default 0). ■ The accessor and mutator methods for id, balance, and...
Design a class named BankAccount that contains: A private int data field named id for the...
Design a class named BankAccount that contains: A private int data field named id for the account. A private double data field named balance for the account. A constructor that creates an account with the specified id and initial balance. A getBalance() method that shows the balance. A method named withdraw that withdraws a specified amount from the account. Create a subclass of the BankAccount class named ChequingAccount. An overdraftlimit to be 1000 for ChequingAccount . Test your ChequingAccount class...
In c++ Design a class named Account that contains: a.An int data field named id for...
In c++ Design a class named Account that contains: a.An int data field named id for the account. b.A double data field named balancefor the account. c.A double data field named annualInterestRate that stores the current interestrate. d.A no-arg constructor that creates a default account with id 0, balance 0, andannualInterestRate 0. e.The set and get functions for id,balance, and annualInterestRate. f.A functionearnedAmount()that calculates and returns the amount of dollars earned after one year. g.A function named printAccountInfo() that print...
Design a class named Student that contains the followingprivate instance variables: A string data field name...
Design a class named Student that contains the followingprivate instance variables: A string data field name for the student name. An integer data field id for the student id. A double data field GPA for the student GPA. An integer data field registeredCredits. It contains the following methods: An empty default constructor. A constructor that creates a student record with a specified id and name. The get and set methods for id, name, GPA, and registeredCredits. A method called registerCredit...
In Java, design a class named MyInteger. The class contains: An int data field named value...
In Java, design a class named MyInteger. The class contains: An int data field named value that stores the int value represented by this object. A constructor that creates a MyInteger object for the specified int A get method that returns the int Methods isEven(), isOdd(), and isPrime() that return true if the value is even, odd, or prime, respectively. Static methods isEven(int), isOdd(int), and isPrime(int) that return true if the specified value is even, odd, or prime, respectively. Static...
Private int data field named id for the account A private double data field named balance...
Private int data field named id for the account A private double data field named balance for the account Private double data field named annualInterestRate that stores the current interest rate Assume all accounts have the same rate Private date data field named date Created that stores the date when the account was created No arg constructor that creates an account with the specified id and initial balance The get and set methods for id balance and annual Interest Rate...
Write a C++ program (The Account Class) Design a class named Account that contains (keep the...
Write a C++ program (The Account Class) Design a class named Account that contains (keep the data fields private): a) An int data field named id for the account. b) A double data field named balance for the account. c) A double data field named annualInterestRate that stores the current interest rate. d) A no-arg constructor that creates a default account with id 0, balance 0, and annualInterestRate 0. e) The accessor and mutator functions for id, balance, and annualInterestRate....
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT