Develop classes for a billofsales customer item and product

Assignment Help JAVA Programming
Reference no: EM131290662

A common business application is an ‘Accounts Receivable' (AR) system. Companies use an AR system to bill their customers on sales of their products. In this assignment question you will develop the functionality of a simple Accounts Receivable system. You will develop classes for a BillofSales, Customer, Item, and Product. The requirement for each of these classes is given below.

BillOfSales

+ Customer customer

+ ArrayList items

. public BillOfSales(Customer c)

. public void add( String productDescription, double productPrice, int productQuantity)

. public double calcAmountDue()

. public String toString()

Customer

+ String name, street, city, state, zipcode

. Customer(String name, String street, String city, String state, String zipcode)

. public String toString()

Item

+ Product product

+ int quantity

. public Item( Product product, item quantity)

. double calcTotalPrice()

. public String toString()

Product

+ String description

+ double price

. public Product( String description, double price)

. String getDescription();

. double getPrice();

In the above, a prefix of a plus (+) indicates a field and a prefix of a dot (.) indicates a method.

You have been provided a test class BillOfSalesTst which has a static test method. For convenience, you do not need to create an instance of BillOfSalesTst. Just right-click and execute the test method. Your output should look like the following:

BILL OF SALES

John Q. Public

123 Elm Steet

Pleasantville, PA 15213

Description Unit Price Num Total

TV 299.99 1 299.99

DVD

9.99 7 69.93

Speakers 49.99 2 99.98

Amount due: 469.90

Guidelines

The following suggestions will help you in developing this assignment. The actual algorithmic complexity of this assignment is not high. There are two interesting parts: hooking up the various classes together (the so called ‘plumbing' of the system) and formatting the output.

For hooking up the classes, it will be helpful to draw a picture of the four classes, their fields and methods using index cards, along the lines of the discussion on CRC cards given in the textbook (pg. 426). For formatting the output, read the documentation for the method String.format on the official Java documentation at: https://download.oracle.com/javase/6/docs/api/java/lang/String.html#format%28java.lang.String,%20java.lang.Object...%29

For guidance, the sample output used above was produced with the format string, "%-25s %8s %5s %10s\n". The header was produced in the toString method of BillOfSales class with

String.format("%-25s %8s %5s %10s\n", "Description", "Unit Price", "Num", "Total");

Create a new project in BlueJ by clicking on the menu option Project > New project. This will create a folder with the project name (see below). All BlueJ project-related files for this project will be stored in this folder. Create new classes by clicking on the [New Class] button. All Java class files that you create (.java files) will be stored in the BlueJ project folder. The project folder will contain other files as well. After completing and testing your assignment, zip the entire BlueJ folder and submit it. Since your Instructor will need all files in the project folder, make sure you zip the entire folder.

Reference no: EM131290662

Questions Cloud

Dependent inventory items : Construct a material structure tree and a gross material requirements plan for the dependent inventory items.
Organizational culture and ethics resources : Creating and maintaining a positive organizational culture in any organization or industry requires leaders to have exceptional awareness, communication, and management skills.
Continuous improvement manager : Being able to identify opportunities for improvement based on data and other information is a valuable professional skill. Most management and administration positions require this skill, but this can be a highly specialized employment position. T..
Determine the price of an average price asian call option : Determine the price of an average price Asian call option. Use an exercise price of 95. Count the current price in determining the average. Comment on whether you would expect a standard European call to have a lower or higher price
Develop classes for a billofsales customer item and product : In this assignment question you will develop the functionality of a simple Accounts Receivable system. You will develop classes for a BillofSales, Customer, Item, and Product.
Very critical and the directors of cyclone : In early December 2008 the situation became very critical and the directors of Cyclone, namely Julie, Emmanuel and the Cyclone CFO Mark, discussed plans on how to drastically cut costs.
How do teaching principles to education : How do teaching principles, varied learning styles (for both nurses and patients), and teaching methodologies impact the approach to education?
Determine the prices of the following barrier options : Then calculate the actual value of the European call or put and compare that answer with your answer obtained from the barrier options. Explain why this result is obtained
Coaching or mentoring activities : What training, coaching or mentoring activities could an organisation provide for employees? Discuss in 80 to 100 words.

Reviews

Write a Review

JAVA Programming Questions & Answers

  Write a class encapsulating the concept of student

Prepare a client class to test all the methods in your class. Make sure to add comments. Comments should be included in the program to explain your calculations and program.

  The array at the index method

have an array, how do i remove an entry from the array at the index method?

  Write a driver program teststackumuc

Write a driver program TestStackUMUC, implemented as a separate class, to test the class StackUMUC . Test the class for the JDK types Double and String and for the user defined type Point.

  What is an array and how do you create one

What is an array and how do you create one? What is the name of the content provider for accessing media on the phone and on external storage devices?

  Application that simulates a cash register

Implement a graphical application that simulates a cash register. Provide a text field for the item price and two buttons for adding the item to the sale, one for taxable items and one for nontaxable items. In a text area, display the register tap..

  Calculates the price of carpeting for rectangular rooms.

Once you have written these classes, use them in an application that asks the user to enter the dimensions of a room and the price per square foot of the desired carpeting. The application should display the total cost of the carpet.

  Write a script that clears the screen

Write a script that clears the screen, determines how many sessions you are in (use who, grep, and wc), compare 2 files that are passed as parameters using diff and cmp, and sort the first file.

  Application that stores at least four different course names

The application as written does not display certain class names included in the instructions as written.

  What is meant by the name dynamic array

So how would you dimension this array if you don't know how many elements you will need? Sure, you could dimension the array to be very large arrStudents[1000], but that would be a big waste, especially if you ended up only needing 5 elements, so ..

  Two types of gui components might be useful

Radio buttons and check boxes are two of many different kinds of components that can be included in a graphical user interface. How are they similar and how are they different? Which kind requires grouping? Give an example of an application where eac..

  Are scripting languages such as javascript better choice

Based on Keston (2008), does the C++ programming language have a role in developing Web 2.0 application solutions based on service-oriented architectures (SOA)? Explain why or why not. Are scripting languages such as JavaScript Perl or Python bett..

  Writing a class using conditionals that test double values

To approximate the square root of a positive number n using Newton's method, you need to make an initial guess at the root and then refine this guess until it is "close enough.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd