//Inventory Program Part 3 class Inventory { //Begin Inventory Class String itemNumber; //stores item number String name; //stores DVD name int stockQuantity; //stores quanity in stock double priceperunit; //stores DVD price double feeperunit; //stores DVD restocking fee public Inventory(String Item_Number, String Item_Name, int Items_in_Stock, double Item_Price, double Item_Fee) { itemNumber = Item_Number; name = Item_Name; stockQuantity = Items_in_Stock; priceperunit = Item_Price; feeperunit = Item_Fee; } public void setItemName(String Item_Name) //Method to set and get the item name { name = Item_Name; } public String getItemName() { return name; } public void setItemNumber(String Item_Number) //Method to set and get the item number { itemNumber = Item_Number; } public String getItemNumber() { return itemNumber; } public void setItemsInStock(int Items_in_Stock) //Method to set and get the quantity in stock { stockQuantity = Items_in_Stock; } public int getItemsInStock() { return stockQuantity; } public void setItemPrice(double Item_Price) //Method to set and get the item price { priceperunit = Item_Price; } public double getItemPrice() { return priceperunit; } public void setItemFee(double Item_Fee) //Method to set and get the item restocking fee { feeperunit = Item_Fee; } public double getItemFee() { return feeperunit; } public double getInventoryValue() //Method to calculate the value of the in stock inventory { return priceperunit * stockQuantity; } public static double getTotalValueOfAllInventory(Inventory [] inv) { double tot = 0.0; for(int i = 0; i < inv.length; i++) { tot += inv[i].getInventoryValue(); } return tot; } public String toString() { return "DVD Title: "+name + "\nItem Number: "+itemNumber+"\nItem Price: $"+priceperunit+"\nQuantity in Stock: "+stockQuantity + "\nRestocking Fee: $"+feeperunit + "\nInventory Value: $"+getInventoryValue(); } } // end Inventory Class class DVD extends Inventory { // Begin DVD Class String genre; // Subclass to add to DVD Movie double restockingFee; // Restock fee to add to inventory value public DVD(String genre, double restockingFee, String Item_Number, String Item_Name, int Items_in_Stock, double Item_Price, double Item_Fee) { super(Item_Number, Item_Name, Items_in_Stock, Item_Price, Item_Fee); this.genre = genre; this.restockingFee = restockingFee; } public double getInventoryValue() // Figures total inventory value including restocking fee { return super.getInventoryValue() + (super.getInventoryValue() * restockingFee); } public String toString() { StringBuffer sb = new StringBuffer("\nGenre: ").append(genre).append("\n"); sb.append(super.toString()); return sb.toString(); } } // End DVD Class public class Inventory3 // Begin Inventorypart3 Class { public static void main(String args[]) { double restockFee = 0.05; DVD[] inventory = new DVD[4]; //create array of DVD movies inventory[0] = new DVD("Drama" ,restockFee, "1","aDVD1" , 8, 12.99, 0.65); inventory[1] = new DVD("Comedy" ,restockFee, "2","dDVD2" , 7, 15.99, 0.80 ); inventory[2] = new DVD("Action",restockFee, "3","bDVD3", 9, 24.99, 1.25); inventory[3] = new DVD("Drama",restockFee,"4","cDVD4" , 4, 19.99, 1.00); DVD temp[] = new DVD[1]; System.out.print( "Inventory of DVD Movies - " ); // display title System.out.println(); System.out.println(); // Sorting Inventory Information for(int j = 0; j < inventory.length - 1; j++) { for(int k = 0; k < inventory.length - 1; k++) { if(inventory[k].getItemName().compareToIgnoreCase(inventory[k+1].getItemName()) > 0) { temp[0] = inventory[k]; inventory[k] = inventory[k+1]; inventory[k+1] = temp[0]; } } } // Print Inventory Information for(int j = 0; j < inventory.length; j++) { System.out.println(inventory[j].toString()); } System.out.printf("\n\nTotal value of inventory: $%.2f\n\n" , Inventory.getTotalValueOfAllInventory(inventory)); return; } } // End Inventory3 Class