Modified Account Class Using java code, modify class Account (Fig 7.8) to provid
ID: 3769252 • Letter: M
Question
Modified Account Class
Using java code, modify class Account (Fig 7.8) to provide a method called withdraw that withdraws money from an Account. Ensure that the withdrawal amount does not exceed the Account's balance. If it does, the balance should be left unchanged and the method should print a message indicating "Withdrawal amount exceeded account balance." Modify class AccountTest (fig 7.9) to test method withdraw.
Fig 7.8
public class Account
{
private String name;
private double balance;
public Account(String name, double balance)
{
this.name = name;
if (balance > 0.0)
this.balance = balance;
}
public void deposit(double depositAmount)
{
if (depositAmount > 0.0)
balance += depositAmount;
}
public double getBalance()
{
return balance;
}
public String getName()
{
return name;
}
}//end class Account
Fig 7.9
import java.util.Scanner;
public class AccountTest
{
public static void main(String[] args)
{
Account account1 = new Account("Jane Green", 50.00);
Account account2 = new Account("John Blue", -7.53);
System.out.printf("%s balance: $%.2f%n", account1.getName(), account1.getBalance());
System.out.printf("%s balance: $%.2f%n%n", account2.getName(), account2.getBalance());
Scanner input = new Scanner(System.in);
System.out.print("Enter deposit amount for account1: ");
double depositAmount = input.nextDouble();
System.out,printf("%nadding %.2f to account1 balance%n%n", depositAmount);
account1.deposit(depositAmount);
System.out.printf("%s balance: $%.2f%n", account1.getName(), account1.getBalance());
System.out.printf("%s balance: $%.2f%n%n", account2.getName(), account2.getBalance());
System.out.print("Enter deposit amount for account2: ");
depositAmount = input.nextDouble();
System.out.printf("%nadding %.2f to account2 balance%n%n", depositAmount);
account2.deposit(depositAmount);
System.out.printf("%s balance: $%.2f%n", account1.getName(), account1.getBalance());
System.out.printf("%s balance: $%.2f%n%n", account2.getName(), account2.getBalance());
}
}//end class AccountTest
Explanation / Answer
public class Account
{
private String name;
private double balance;
public Account(String name, double balance)
{
this.name = name;
if (balance > 0.0)
this.balance = balance;
}
public void deposit(double depositAmount)
{
if (depositAmount > 0.0)
balance += depositAmount;
}
public double getBalance()
{
return balance;
}
public String getName()
{
return name;
}
public void withdraw(double amount)
{
if (this.balance<amount) {
System.out.printf("Given amount not available in your account.");
}
else
{
this.balance = this.balance - amount;
System.out.printf("Amount withdrawn successfully.");
}
}
}//end class Account
Fig 7.9
import java.util.Scanner;
public class AccountTest
{
public static void main(String[] args)
{
Account account1 = new Account("Jane Green", 50.00);
Account account2 = new Account("John Blue", -7.53);
System.out.printf("%s balance: $%.2f%n", account1.getName(), account1.getBalance());
System.out.printf("%s balance: $%.2f%n%n", account2.getName(), account2.getBalance());
Scanner input = new Scanner(System.in);
System.out.print("Enter deposit amount for account1: ");
double depositAmount = input.nextDouble();
System.out,printf("%nadding %.2f to account1 balance%n%n", depositAmount);
account1.deposit(depositAmount);
System.out.printf("%s balance: $%.2f%n", account1.getName(), account1.getBalance());
System.out.printf("%s balance: $%.2f%n%n", account2.getName(), account2.getBalance());
System.out.print("Enter deposit amount for account2: ");
depositAmount = input.nextDouble();
System.out.printf("%nadding %.2f to account2 balance%n%n", depositAmount);
account2.deposit(depositAmount);
System.out.printf("%s balance: $%.2f%n", account1.getName(), account1.getBalance());
System.out.printf("%s balance: $%.2f%n%n", account2.getName(), account2.getBalance());
System.out.print("Input an amount for withdraw : ");
double amount = input.nextDouble();
account1.withdraw(amount);
}
}//end class AccountTest
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.