The purpose of this system is to keep collectible items (books, CDs, DVDs and magazines), organized by type. The system should allow recording of common and specific data for each type of item. Common data are: unique identification, name, year, price and status. For books it is also important to keep the name of the publisher and the year of publication. As for CDs, it is interesting to keep the musical genre and the identification of the audio tracks (song names). For DVDs it is important to store the type (musical, film or data), and a general description about the item or extras, for example. Finally, of the magazines it is interesting to keep the year of publication, the volume, the publisher and the main subjects dealt with.
The status attribute will have a note about the collectible, and the following rules must be observed:
The system should allow printing of a list of each collectible type. It must also allow searches for specific items of each type. For example, from magazines it is interesting to research about the subjects it addresses, as the search for “object-oriented programming” could show the user a list of all the magazines that deal with this subject. It must allow the consultation of a specific item by identifying it.
Always at the end of the listings, the total value of the listed items must be informed.
Make a set of classes that make it possible to manage at least 2 of the collectible types presented in the text.