/* Welcome to BIG BOSS Savings and Loan .... You are the "NERD" in this assignment. You need to implement at least 4/5 features demanded by the "BOSS", each in a separate aspect (and in a separate file). No changes can be made in this file, not even main. You need to statisfy the requirements as stated by the BOSS. BOSS: Hey nerd, write me a program to keep track of bank accounts! */ public class account { private double balance; private String owner; public account(double x, String s) { balance=x; owner=s; } public String owner() { return owner; } public void withdraw(double a) { balance -= a; } public void deposit(double a) { balance += a; } public void printbalance() { System.out.println(balance); } // main for testing: public static void main(String[] argv) { account a1 = new account(2000,"you boss"); account a2 = new account(1000,"me nerd"); a1.deposit(400); a2.withdraw(300000); // not enough money! a2.withdraw(-500000); // trying to cheat! a1.printbalance(); a2.printbalance(); }//main } // account /* NERD: It's done sir! BOSS: You call this a program?! Is this all that your granola-eating, math-loving professors taught you how to do at Hofstra? You can withdraw a greater amount than your current balance! It's even possible to withdraw a negative amount, which will increase the balance. Deposit also doesn't check if the amount is negative. No wonder we're losing so much money, you useless nerd! (1) NERD: I've fixed the problems in the program sir! BOSS: How is the user going to interact with your program? Most people need a graphical interface in order to use a computer: they're not nerdy geeks like you. (2) NERD: That's easy, I'll do a javax.swing interface right away! BOSS: Your bleeding heart professors probably think that there aren't any bad people in the world (kum-ba-ya!) There's no secret pin or password that needs to be entered before a customer can make a transaction. We don't live on a commune like your hippie professors. (3) NERD: OK, I'll do that too. BOSS: While you were doing that I got another nerd to implement a feature to charge a fee when a withdraw lowers the balance below a certain minimum. But he can't get it to work and I fired him. Here's the code he was working on. He left you some choice comments. You need to get it to work, along with everything else you're working on, or I'll fire you too. (4) class gougingaccount extends account { protected double minimum = 500.0; // minimum to avoid charges protected double fee = 3.99; // fee to be charged. public gougingaccount(double x, String s) { if (x