Write an application containing a main method that declares


Write a Java program that meets the following requirements:

A. Create a class named "Invoice" that holds an invoice numner, balance due, and three fields representing the month, day and year when the balance is due. Create a constructor that accepts values for all five data fields. Within the constructor, assign each argument to the appropriate field with the following exceptions:

·If an invoice number is less t han 1000, force the invoice number to 0.
·If the month field is less than 1 or greater than 12, force the month field to 0.
·If the day field is less than 1 or greater than 31, force the day field to 0.
·If the year field is less than 2011 or greater than 2017, force the year field to 0.

In the "Invoice" class, include a display method that displays all the fields on an Invoice object. Save the file as "Invoice.java".

B. Write an application containing a main() method that declares several Invoice objects, proving that all the statements in the constructor operate as specified. Save the file as "TestInvoice.java".

C. Modify the constructor in the Invoice class so that the day is not greater than 31, 30, or 28, depending on the month. For example, if a user tries to create an invoice for April 31, force it to April 30. Also, if the month is invalid, and thus forced to 0, also force the day to 0. Save the modified Invoice class as Invoice2.java. Then modify the TestInvoice class to create Invoice2 objects. Create enough objects to test every decision in the constructor. Save this file as "TestInvoice2.java".

Purpose:

Create a java program from detailed directions.

Ability to:

Follow established programming conventions for writing java programs
Create a class
Instantiate an object
Create a constructor to override the default constructor
Able to write nested IF statements
Use the print statement for output.

Solution Preview :

Prepared by a verified Expert
JAVA Programming: Write an application containing a main method that declares
Reference No:- TGS01702169

Now Priced at $40 (50% Discount)

Recommended (97%)

Rated (4.9/5)