Question
JAVA Inheritance and Interfaces Overview In this homework, you will implement a system that reads in an inventory file, prints the inventory to the console,
JAVA
Inheritance and Interfaces
Overview
In this homework, you will implement a system that reads in an inventory file, prints the
inventory to the console, and ships items.
Business Rules
There are two types of items tracked in the system: food items and household (durable) items.
Food Items: Food items are perishable, and a perishable item has a limited shelf life. The item must be removed from the shelf when it expires. The expiration date is simply
expiration date = date placed in inventory + shelf life in days
Household Items: Household items have unlimited shelf life, so they do not have an expiration date. They do have (sometimes substantial) weight. The shipping cost is
$10.00 / pound. If the item is shipped on a weekend day, the shipping cost should be increased by $20.00.
Example: a 20 pound item shipped on Saturday would have a shipping cost of
$220.00.
Program Design
Input
The program will take as input a file formatted as follows:
food,banana,5 food,bread,10 household,toaster,5 household,washer,200
The first element in a line is the type of item: food or household good. If the item is a food item, the second element is the name, the third is the shelf life in days. If the item is a household good, the second element is the name and the third is the shipping weight in pounds.
You will create an input file with the data above called "input.txt". When you load the file you should not use a full path.
Program Flow
The following pseudocode shows the required flow of the program.
Begin
for each line in inventory file do determine inventory type
based on type, create object to hold data (FoodItem or Household Item)
populate item with appropriate data (weight, etc) store in inventory list
end
for each item in inventory list do print item
end
request shipping date from user
for each household item in inventory do
determine shipping cost based on shipping date print shipping cost
end
End
Output
The output of the program for the input above would be
Item banana
-?-? Shelf Life: 5
-?-? Remove from Shelf: Fri Oct 10 19:37:29 CDT 2016 Item bread
-?-? Shelf Life: 10
-?-? Remove from Shelf: Wed Oct 15 19:37:29 CDT 2016 Item toaster
-?-? Weight: 5 Item washer
-?-? Weight: 200
Please enter a shipping date: March 16, 2016
Toaster will be shipped on March 16, 2016. Shipping cost is $70.00. Washer will be shipped on March 16, 2016. Shipping cost is $2020.00.
NOTE: The remove from shelf dates are based on the date the program is run. They will not be the same as those shown above.
UML and Javadoc
The classes and interfaces have been specified for you, and are documented in the UML diagram below and in Javadoc. The Javadoc for the project is available online
as a zipped directory and on the web at http://162.243.207.40/.(This is the website where the files can be found for this program)
Approach
Start by creating all the classes and interfaces and their methods and propertieswithout worrying about what the methods do. When you have this code compiling, go back and implement the methods. For each class and method, read the relavent portion of the Javadoc and look at where it fits in the overall flow of the program (see the pseudocode).
NOTE: I need help creating the JAVA CODE NOT THE PSEUDOCODE.... I would really appreacite it if someone can help me with this.
Thank you in advance
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started