Question: MY CODE FOR ACCOUNT.JAVA (THE FLEXIBLE ACCOUNT CLASS EXERCISE): public class Account { private double balance; private String name; private long acctNum1; private long acctNum;

 MY CODE FOR ACCOUNT.JAVA (THE FLEXIBLE ACCOUNT CLASS EXERCISE): public class

MY CODE FOR ACCOUNT.JAVA (THE FLEXIBLE ACCOUNT CLASS EXERCISE):

public class Account

{

private double balance;

private String name;

private long acctNum1;

private long acctNum;

//-------------------------------------------------

//Constructor -- initializes balance, owner, and account number

//-------------------------------------------------

public Account(double initBal, String owner, long number)

{

balance = initBal;

name = owner;

acctNum1 = number;

}

public Account(double initBal, String owner)

{

balance = initBal;

name = owner;

}

public Account(String owner)

{

name = owner;

}

//-------------------------------------------------

// Checks to see if balance is sufficient for withdrawal.

// If so, decrements balance by amount; if not, prints message.

//-------------------------------------------------

public void withdraw(double amount)

{

if (balance >= amount)

balance -= amount;

else

System.out.println("Insufficient funds");

}

public void withdraw(double amount, double fee)

{

if (balance >= (amount+fee))

balance -= (amount+fee);

else

System.out.println("Insufficient funds");

}

//-------------------------------------------------

// Adds deposit amount to balance.

//-------------------------------------------------

public void deposit(double amount)

{

balance += amount;

}

//-------------------------------------------------

// Returns balance.

//-------------------------------------------------

public double getBalance()

{

return balance;

}

//-------------------------------------------------

// Returns a string containing the name, account number, and balance.

//-------------------------------------------------

public String toString()

{

return "Name:" + name +

" Account Number: " + acctNum1 +

" Balance: " + balance;

}

}

//***********TestAccount.java

import java.util.Scanner;

public class TestAccount

{

public static void main(String[]args)

{

String name;

double balance;

long acctNum;

Account acct;

Scanner scan = new Scanner(System.in);

System.out.println("Enter account holder's first name:");

name = scan.next();

acct = new Account(name);

System.out.println("Account for " + name + ":");

System.out.println(acct);

System.out.println(" Enter initial balance");

balance = scan.nextDouble();

acct = new Account(balance,name);

System.out.println("Account for " + name + ":");

System.out.println(acct);

System.out.println(" Enter account number");

acctNum = scan.nextLong();

acct = new Account(balance,name,acctNum);

System.out.println("Account for " + name + ":");

System.out.println(acct);

System.out.print(" Depositing 100 into account, balance is now ");

acct.deposit(100);

System.out.println(acct.getBalance());

System.out.print(" Withdrawing $25, balance is now ");

acct.withdraw(25);

System.out.println(acct.getBalance());

System.out.print(" Withdrawing $25 with $2 fee, balance is now ");

acct.withdraw(25,2);

System.out.println(acct.getBalance());

System.out.println(" Bye!");

}

}

Transfering Funds File Account.java (see A Flexible Account Class exercise) contains a definition for a simple bank account class with methods to withdraw, deposit, get the balance and account number, and print a summary. Save it to your directory and study it to see how it works. Then write the following additional code: 1. Add a method public void transfer(Account acct, double amount) to the Account class that allows the user to transfer funds from one bank account to another. If acctl and acct2 are Account objects, then the call acctl.transferfacct2,957.80) should transfer $957.80 from acctl to acct2. Be sure to clearly document which way the transfer goes! 2. Write a class TransferTest with a main method that creates two bank account objects and enters a loop that does the following: Asks if the user would like to transfer from accountl to account2, transfer from account2 to accountl, or quit D If a transfer is chosen, asks the amount of the transfer, carries out the operation, and prints the new balance for each account. Repeats until the user asks to quit, then prints a summary for each account. 3. Add a static method to the Account class that lets the user transfer money between two accounts without going through either account. You can (and should) call the method transfer just like the other one -you are overloading this method. Your new method should take two Account objects and an amount and transfer the amount from the first account to the second account. The signature will look like this: public static void transfer(Account acctl, Account acct2, double amount) Modify your TransferTest class to use the static transfer instead of the instance version

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!