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 o...

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 appropriateSample 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 

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

1 Expert Approved Answer
Step: 1 Unlock

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... View full answer

blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!