Question
Produce a Java program that does the following: Media hierarchy: Create Media, EBook, MovieDVD, and MusicCD Add an attribute to Media class to
Produce a Java program that does the following:
Media hierarchy:
· Create Media, EBook, MovieDVD, and MusicCD
· Add an attribute to Media class to store indication when media object is rented versus available. Add code to the constructor and create get and set methods as appropriate.
· Add any additional constructors and methods needed to support the below functionality
Utilize a Manager class that does the following:
· stores a list of Media objects
· has functionality to load Media objects from files
· creates/updates Media files
· has functionality to add new Media object to its Media list
· has functionality to find all media objects for a specific title and returns that list
· has functionality to rent Media based on id (updates rental status on media, updates file, returns rental fee)
Implement MediaRentalSystem which has the following functionality:
· user interface which is either menu driven through console commands or GUI buttons or menus. Look at the bottom of this project file for sample look and feel.
· selection to load Media files from a given directory (user supplies directory)
· selection to find a media object for a specific title value (user supplies title and should display to user the media information once it finds it - should find all media with that title)
· selection to rent a media object based on its id value (user supplies id and should display rental fee value to the user)
· selection to exit program
The Program should throw and catch Java built-in and user-defined exceptions as appropriate
Classes must be coded with correct encapsulation: private/protected attributes, get methods, and set methods and value validation
There should be appropriate polymorphism: overloading, overriding methods, and dynamic binding
Program should take advantage of the inheritance properties as appropriate
Sample User interface - GUI: Menu Welcome to Media Rental System Menu Load Media objects... Find Media object... Rent Media object... Quit Welcome to Media Rental System Open 7 Look In: 100 Windows (C:) $GetCurrent Brother cygwin Intel MSOCache PerfLogs Program Files Program Files (x86) | ProgramData Python27 Python36 Python37 sr tmp-umuc Folder name: C:\mp-umuc Files of Type: All Files Users usr T E 01 Windows Windows.old Windows 10Upgrade Open 0 X 19 Cancel
Step by Step Solution
3.53 Rating (153 Votes )
There are 3 Steps involved in it
Step: 1
Heres the simplified outline of how we can structure the java program 1Media class hierarchy create an abstract class Media with attributes like id ti...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