Loading...

Messages

Proposals

Stuck in your homework and missing deadline? Get urgent help in $10/Page with 24 hours deadline

Get Urgent Writing Help In Your Essays, Assignments, Homeworks, Dissertation, Thesis Or Coursework & Achieve A+ Grades.

Privacy Guaranteed - 100% Plagiarism Free Writing - Free Turnitin Report - Professional And Experienced Writers - 24/7 Online Support

Java program to create account class

27/11/2021 Client: muhammad11 Deadline: 2 Day

Lab 4: OO Design and Interfaces

Score: 50 pts

I. Student GPA’s

This exercise is based on the requirement analysis and solution design that was discussed in class. The full analysis can be found under the Week 7 -> Materials folder on BlackBoard. You are required to take this design and convert it into Java code. This includes writing the Student class along with its variables and methods. Make sure that you use the proper accessibility modifiers (private & public) such that encapsulation is properly enforced.

After writing the Student class, write another class named StudentData, and add your main function in that class. In the main function, create two objects of the Student class, add four courses for the first student object, and three courses for the second student object. Each added course is associated with a letter grade and a number of credits. Then call the compute_gpa() function to compute the GPA for each student, and print out the GPA for each student, along with his list of courses, grades and credits.

II. Using the Comparable Interface

1. Write a class Compare3 that provides a static method largest. Method largest should take three Comparable parameters and return the largest of the three (so its return type will also be Comparable). Recall that method compareTo is part of the Comparable interface, so largest can use the compareTo method of its parameters to compare them.

2. Write a class Comparisons whose main method tests your largest method above.

· First prompt the user for and read in three strings, use your largest method to find the largest of the three strings, and print it out. (It’s easiest to put the call to largest directly in the call to println.) Note that since largest is a static method, you will call it through its class name, e.g., Compare3.largest(val1, val2, val3).

· Add code to also prompt the user for three integers and try to use your largest method to find the largest of the three integers. Does this work? If it does, it’s thanks to autoboxing, which is Java 1.5’s automatic conversion of ints to Integers. You may have to use the -source 1.5 compiler option for this to work.

III. A Flexible Account Class

File Account.java contains a definition for a simple bank account class with methods to withdraw, deposit, get the balance and account number, and return a String representation. Note that the constructor for this class creates a random account number. Save this class to your directory and study it to see how it works. Then modify it as follows:

1. Overload the constructor as follows:

· public Account (double initBal, String owner, long number) - initializes the balance, owner, and account number as specified

· public Account (double initBal, String owner) - initializes the balance and owner as specified; randomly generates the account number.

· public Account (String owner) - initializes the owner as specified; sets the initial balance to 0 and randomly generates the account number.

2. Overload the withdraw method with one that also takes a fee and deducts that fee from the account.

File TestAccount.java contains a simple program that exercises these methods. Save it to your directory, study it to see what it does, and use it to test your modified Account class.

//************************************************************

// Account.java

//

// A bank account class with methods to deposit to, withdraw from,

// change the name on, and get a String representation

// of the account.

//************************************************************

public class Account

{

private double balance;

private String name;

private long acctNum;

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

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

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

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

{

balance = initBal;

name = owner;

acctNum = number;

}

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

// 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");

}

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

// 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 +

"\nAccount Number: " + acctNum +

"\nBalance: " + balance;

}

}

//************************************************************

// TestAccount.java

//

// A simple driver to test the overloaded methods of

// the Account class.

//************************************************************

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("\nEnter initial balance");

balance = scan.nextDouble();

acct = new Account(balance,name);

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

System.out.println(acct);

System.out.println("\nEnter account number");

acctNum = scan.nextLong();

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

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

System.out.println(acct);

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

acct.deposit(100);

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

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

acct.withdraw(25);

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

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

acct.withdraw(25,2);

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

System.out.println("\nBye!");

}

}

IV. Opening and Closing Accounts

File Account.java (see previous exercise) contains a definition for a simple bank account class with methods to withdraw, deposit, get the balance and account number, and return a String representation. Note that the constructor for this class creates a random account number. Save this class to your directory and study it to see how it works. Then write the following additional code:

1. Suppose the bank wants to keep track of how many accounts exist.

a. Declare a private static integer variable numAccounts to hold this value. Like all instance and static variables, it will be initialized (to 0, since it’s an int) automatically.

b. Add code to the constructor to increment this variable every time an account is created.

c. Add a static method getNumAccounts that returns the total number of accounts. Think about why this method should be static - its information is not related to any particular account.

d. File TestAccounts1.java contains a simple program that creates the specified number of bank accounts then uses the getNumAccounts method to find how many accounts were created. Save it to your directory, then use it to test your modified Account class.

2. Add a method void close() to your Account class. This method should close the current account by appending “CLOSED” to the account name and setting the balance to 0. (The account number should remain unchanged.) Also decrement the total number of accounts.

3. Add a static method Account consolidate(Account acct1, Account acct2) to your Account class that creates a new account whose balance is the sum of the balances in acct1 and acct2 and closes acct1 and acct2. The new account should be returned. Two important rules of consolidation:

· Only accounts with the same name can be consolidated. The new account gets the name on the old accounts but a new account number.

· Two accounts with the same number cannot be consolidated. Otherwise this would be an easy way to double your money!

Check these conditions before creating the new account. If either condition fails, do not create the new account or close the old ones; print a useful message and return null.

4. Write a test program that prompts for and reads in three names and creates an account with an initial balance of $ 100 for each. Print the three accounts, then close the first account and try to consolidate the second and third into a new account.

Now print the accounts again, including the consolidated one if it was created.

//************************************************************

// TestAccounts1

// A simple program to test the numAccts method of the

// Account class.

//************************************************************

import java.util.Scanner;

public class TestAccounts1

{

public static void main(String[] args)

{

Account testAcct;

Scanner scan = new Scanner(System.in);

System.out.println("How many accounts would you like to create?");

int num = scan.nextInt();

for (int i=1; i<=num; i++)

{

testAcct = new Account(100, "Name" + i);

System.out.println("\nCreated account " + testAcct);

System.out.println("Now there are " + Account.numAccounts () +

" accounts");

}

}

}

V. 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 acct1 and acct2 are Account objects, then the call acct1.transfer(acct2,957.80) should transfer $957.80 from acct1 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 account1 to account2, transfer from account2 to account1, or quit.

· 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 acct1, Account acct2, double amount)

Modify your TransferTest class to use the static transfer instead of the instance version.

Deliverables

1. Complete all the activities in this lab; then zip all your Java SOURCE CODE FILES for submission.

2. Write a lab report in Word or PDF document. The report should be named lab4.docx or lab4.pdf and must contain the following:

a. The first page should be a cover page that includes the Class Number, Lab Activity Number, Date, and Instructor’s name.

b. A description of the lab activities, the concepts learned and applied. Be sure to elaborate on all the concepts applied. A minimum of 2-page description is expected.

c. A 1-paragraph conclusion about your experience; how long you spent completing the lab, the challenges you faced.

3. Upload your lab report and the zip file of your source code to Blackboard. DO NOT SUBMIT separate source files. If you do, they will be ignored.

Homework is Completed By:

Writer Writer Name Amount Client Comments & Rating
Instant Homework Helper

ONLINE

Instant Homework Helper

$36

She helped me in last minute in a very reasonable price. She is a lifesaver, I got A+ grade in my homework, I will surely hire her again for my next assignments, Thumbs Up!

Order & Get This Solution Within 3 Hours in $25/Page

Custom Original Solution And Get A+ Grades

  • 100% Plagiarism Free
  • Proper APA/MLA/Harvard Referencing
  • Delivery in 3 Hours After Placing Order
  • Free Turnitin Report
  • Unlimited Revisions
  • Privacy Guaranteed

Order & Get This Solution Within 6 Hours in $20/Page

Custom Original Solution And Get A+ Grades

  • 100% Plagiarism Free
  • Proper APA/MLA/Harvard Referencing
  • Delivery in 6 Hours After Placing Order
  • Free Turnitin Report
  • Unlimited Revisions
  • Privacy Guaranteed

Order & Get This Solution Within 12 Hours in $15/Page

Custom Original Solution And Get A+ Grades

  • 100% Plagiarism Free
  • Proper APA/MLA/Harvard Referencing
  • Delivery in 12 Hours After Placing Order
  • Free Turnitin Report
  • Unlimited Revisions
  • Privacy Guaranteed

6 writers have sent their proposals to do this homework:

WRITING LAND
Top Quality Assignments
Academic Master
Accounting & Finance Master
A Grade Exams
Accounting & Finance Specialist
Writer Writer Name Offer Chat
WRITING LAND

ONLINE

WRITING LAND

After reading your project details, I feel myself as the best option for you to fulfill this project with 100 percent perfection.

$39 Chat With Writer
Top Quality Assignments

ONLINE

Top Quality Assignments

I have assisted scholars, business persons, startups, entrepreneurs, marketers, managers etc in their, pitches, presentations, market research, business plans etc.

$45 Chat With Writer
Academic Master

ONLINE

Academic Master

As per my knowledge I can assist you in writing a perfect Planning, Marketing Research, Business Pitches, Business Proposals, Business Feasibility Reports and Content within your given deadline and budget.

$25 Chat With Writer
Accounting & Finance Master

ONLINE

Accounting & Finance Master

I can assist you in plagiarism free writing as I have already done several related projects of writing. I have a master qualification with 5 years’ experience in; Essay Writing, Case Study Writing, Report Writing.

$19 Chat With Writer
A Grade Exams

ONLINE

A Grade Exams

I have read your project details and I can provide you QUALITY WORK within your given timeline and budget.

$42 Chat With Writer
Accounting & Finance Specialist

ONLINE

Accounting & Finance Specialist

I have written research reports, assignments, thesis, research proposals, and dissertations for different level students and on different subjects.

$18 Chat With Writer

Let our expert academic writers to help you in achieving a+ grades in your homework, assignment, quiz or exam.

Similar Homework Questions

Knight company reports the following costs and expenses in may - PS - John garside slim pc - Laplace criterion in decision making - Humanistic and existential personality theories worksheet answers - 3 slide power point - Bmaa sigma - The elephant in the village of the blind - What were the rules of the ancient olympics - Windshield survey example - CAPSTONE MBA - Ba oh 2 h20 - Lyrics to katy perry's firework - Informing candidates of interview decisions - ?same-day +27833173182 BIG BEND ABORTION CLINIC // PILLS,,,, - The little seagull handbook inquizitive - Club car eric charger usb - How many centimeters correspond to 15.68 kilometers - Helping skills facilitating exploration insight and action 4th ed pdf - What are the three pressures driving sustainable mis infrastructures? - Breakdown voltage of air - Develop: Presentation and Reflection Evaluation Title: Your Story - Reaction between magnesium and hydrochloric acid - Big red bicycle pty ltd scenario - History H.W - How to mark tools for identification - Which theorists have delineated a comprehensive learning theory of career counseling (lttc)? - SMGT 501 - Analysis Paper Week 6 - 106.7 kg in pounds - Linear algebra question - The manufacturing of semiconductor chips produces - The house on mango street ruthie - How to Care for a Senior Dog - 15 page powerpoint slide - Week 4 - Be good little migrants - A basic premise of adam smith's invisible hand argument is - How to write a letter to a friend - Describe the role of three external services during an emergency - Acid base titration analysis of vinegar experiment - Kaizen advantages and disadvantages tutor2u - Avon embraces diversity case study - The butterfly by patricia polacco youtube - Pol 201 week 1 discussion 1 - Areas of strength in nursing - Interpreting the tsi 2 - V2500 engine training manual - Power in dc circuits lab report - History 1301 exam 2 - Summary of major counseling theories - Translational Research And Population Health Management - Colours in te reo - Titanic case study ethics - Lab 1 - Average distance to sun - Siemens etu776 trip curves - Persuasive speech outline on smoking - Service Delivery Models - The most popular pizza at pavone's pizza - Case study on total quality management with solution - Four steps in managing external stakeholder relationships - Hipaa includes in its definition of research activities related to - Essay - Churchill hospital site map - Create a D&I Infrastructure - 10- to 12-slide presentation with speaker notes due october 7th 2020 - Ship trap island brochure - Contingency Planning - What makes nursing a profession - Difference between subjective and objective questions - Little red riding hood script - Policy-Maker Letter - Zelda phantom hourglass maze island - University of utah catalog - Yo yo ma necessary edges - Chinese cinderella worksheet answers - 55 buckingham avenue springvale 3171 - Three historical examples of recessions affecting bargaining power - A study was done to find if different tire treads - Nicholas cartwright mark on neck - Huawei antenna catalogue 2019 - Texas teachers lesson plans - West coast outdoor advertisers sam project - What role should external factors of demand play in successful business models? - Scribe barossa shiraz 2015 - Nsqhs standards medication safety - What is prevarication in linguistics - Mindtap a gray whale performs a pole dance - How to calculate outright quotes for bid and ask - I need 2000 words on good scope of the project and the stakeholders Risk Identification and Mitigation plan (minimum six with three technical - Richard hamlin son of catherine hamlin - Essay - Advanced engineering mathematics 10th - Provide one Nanda care plan for the older adult that targets prevention and health promotion. - Data Analysis and Quality Improvement Initiative (1*3) - VBA program - What is the mass of a rock - Medical check up for confined space - What is integrity interview question - Nutrition and wellness changes in adults