Design and implement an abstract class called LibraryMaterial -fields: author, title, price, publication year -constructor should have 4 parameters -methods: multiple getxxxx and setxxxx ; displayInfo

Design and implement two subclasses that define various types of library materials: class Book - fields: type (hardcover/paperback/large print); edition (1st, 2nd, …); number of pages. - default constructor - non-default constructor (use super reference) - methods: get/set methods, displayInfo

class AudiovisualMaterial - fields: type (audio tape, CD, DVD), cover image (not a string that represents file name!), short sound clip (up to 10 sec., not necessarily a fragment of the material) - default constructor - non-default constructor (use super reference) - methods: get/set methods, displayInfo, displayCover, playSoundClip

Create a UML class diagram (Violet or Visio file)

Create a Librarian class that should:

  • instantiate three books using default constructor, then populate the instances;
  • instantiate and populate a CD and a DVD using non-default constructor;
  • insert a set of music on cassette into your structure at the third position;
  • display all the information about all the accumulated library materials.

Create javadoc

General directions

  • Use a polymorphic approach.
  • Use enhanced for loop for traversing.
  • Create a user-friendly, appealing user interface.
  • When designing the algorithm and choosing data structures, be sure to make it convenient for adding the materials.
  • You can “hardcode” the data using the following entries found on
Academic Honesty!
It is not our intention to break the school's academic policy. Projects posted are only used as a reference and should not be submitted as is. We are not held liable for any misuse of the solutions. Please see the frequently asked questions page for further questions and inquiries.
Kindly fill out the form. Please provide a valid email address and we'll get back to you in less than 24 hours. We will be sending an invoice through PayPal upon confirmation. We are a non profit organization however we need an amount to keep this organization running, and to be able to complete our research and development.