Final answer:
The task is to write a Java program that simulates a music playlist using classes for Songs, Playlist (as a doubly linked list), and Demo for user interactions to manipulate the playlist.
Step-by-step explanation:
The student is asked to create a music playlist program in Java utilizing object-oriented programming principles. Specifically, the program is expected to consist of three classes: Song, Playlist (a doubly linked list), and Demo for interacting with the playlist.
The Song class will contain fields for the song's metadata and pointers to the next and previous songs, effectively forming the nodes of the doubly linked list. The Playlist class will manage these nodes, allowing addition, insertion after the current song, deletion, and displaying of song information. The Demo class will serve as the user interface to interact with the Playlist.
The Playlist's toString method will need to provide details such as the total number of songs and the overall length of the Playlist in minutes and seconds. Functionalities such as adding a song, inserting a song after the current one, removing the current song, skipping to the next song, and returning to the previous song must be implemented through user input in the Demo class.