Description: required to implement a variation of the linked list ADT called a circular linked list. The linked list should be able to be used to keep any Object type data. The linked field of the last node of a circular linked list is not NULL, instead it points back to the first node. Your implementation should at least include the following operations:
Add to the end of the list
Remove a specified item from the list
Retrieve a specified item from the list
Traverse the list using an Iterator
You may include other operations deemed necessary.
Using the Linked List ADT that you have implemented above, write an application code to test your ADT. Choose an object (such as Book, Worker, Retail Item, etc), define the class for the object, and create a list to work on these objects. Allow your application code to demonstrate the use of all the operations defined in the Linked List ADT.
File list (Check if you may need any files):
LinkedList(Book)\.classpath
................\.project
................\Book.class
................\Book.java
................\BookFrame$1.class
................\BookFrame$2.class
................\BookFrame.class
................\BookFrame.java
................\Main.class
................\Main.java
................\MyLinkedList.class
................\MyLinkedList.java
LinkedList(Book)