Please don't take this post down. It is not a homework assignment and follows all guidelines. Code in Java and post the finished result. Write a RetailItem class that holds data pertaining to a retail item. Write an exception class that can be instantiated and thrown when a negative number is given for the price. Write another exception class that can be instantiated and thrown when a negative number is given for the units on hand. Demonstrate the exception classes in a program. Please use pseudocode to easily explain each line of code and  also include a simple algorithm and write in your pseudocode where it is. Also include a simple UML diagram.. RetailItem.Java public class RetailItem {    private String description;   // Item description    private int unitsOnHand;      // Number of units on hand    private double price;         // Unit price

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
100%

Please don't take this post down. It is not a homework assignment and follows all guidelines.

Code in Java and post the finished result. Write a RetailItem class that holds data pertaining to a retail item.

Write an exception class that can be instantiated and thrown when a negative number is given for the price. Write another exception class that can be instantiated and thrown when a negative number is given for the units on hand. Demonstrate the exception classes in a program. Please use pseudocode to easily explain each line of code and  also include a simple algorithm and write in your pseudocode where it is. Also include a simple UML diagram..

RetailItem.Java

public class RetailItem
{
   private String description;   // Item description
   private int unitsOnHand;      // Number of units on hand
   private double price;         // Unit price

   /**
      This constructor initializes the item's
      description with an empty string, units on hand
      to 0, and price to 0.0.
   */

   public RetailItem()
   {
      description = "";
      unitsOnHand = 0;
      price = 0.0;
   }

   /**
      This constructor initializes the item's
      description, units on hand, and price with
      values passed as arguments.
      @param d The item's description.
      @param u The number of units on hand.
      @param p The item's price.
   */
   
   public RetailItem(String d, int u, double p)
   {
      description = d;
      unitsOnHand = u;
      price = p;
   }

   /**
      The setDescription method sets the item's
      description.
      @param d The item's description.
   */

   public void setDescription(String d)
   {
      description = d;
   }

   /**
      The setUnitsOnHand method sets the item's
      number of units on hand.
      @param u The number of units on hand.
   */

   public void setUnitsOnHand(int u)
   {
      unitsOnHand = u;
   }

   /**
      The setPrice method sets the item's price.
      @param p The item's price.
   */

   public void setPrice(double p)
   {
      price = p;
   }

   /**
      The getDescription method returns the item's
      description.
      @return The item's description.
   */

   public String getDescription()
   {
      return description;
   }

   /**
      The getUnitsOnHand method returns the item's
      number of units on hand.
      @return The units on hand.
   */

   public int getUnitsOnHand()
   {
      return unitsOnHand;
   }

   /**
      The getPrice method rerurns the item's price.
      @return The item's price.
   */

   public double getPrice()
   {
      return price;
   }
}

 

RetailItemDemo.Java

public class RetailItemDemo
{
   public static void main(String[] args)
   {
      // Create the first item. Use the no-arg constructor.
      RetailItem item1 = new RetailItem();
      item1.setDescription("Jacket");
      item1.setUnitsOnHand(12);
      item1.setPrice(59.95);
      
      // Create the second item. Use the constructor
      // to initialize the fields.
      RetailItem item2 = 
           new RetailItem("Designer Jeans", 40, 34.95);

      // Create the third item. Use the no-arg constructor.
      RetailItem item3 = new RetailItem();
      item3.setDescription("Shirt");
      item3.setUnitsOnHand(20);
      item3.setPrice(24.95);
      
      // Display the info for item1.
      System.out.println("Item #1");
      System.out.println("Description: " + item1.getDescription());
      System.out.println("Units on hand: " + item1.getUnitsOnHand());
      System.out.println("Price: " + item1.getPrice());

      // Display the info for item2.
      System.out.println("\nItem #2");
      System.out.println("Description: " + item2.getDescription());
      System.out.println("Units on hand: " + item2.getUnitsOnHand());
      System.out.println("Price: " + item2.getPrice());

      // Display the info for item3.
      System.out.println("\nItem #3");
      System.out.println("Description: " + item3.getDescription());
      System.out.println("Units on hand: " + item3.getUnitsOnHand());
      System.out.println("Price: " + item3.getPrice());
   }
}

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 6 steps with 5 images

Blurred answer
Knowledge Booster
Exception Handling Keywords
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education