Reference no: EM131032696
Create a BlueJ project that maintains a student, faculty and staff directory. Your project should be able to add new entries, update entries and print the entries alphabetically by name. In addition, you should be able to remove an entry or print an entry given the entry name.
Assume the entries have the following fields:
All Persons
First name
Last name
Email address
Students
Class (e.g. freshman, sophmore, junior, senior)
Staff
Office
Title (e.g. Mr., Ms.)
Faculty
Office
Tenured (Boolean)
The directory should contain these methods:
Add person
Print all people (alphabetically by name)
Print just Students
Remove a person
Retrieve a person
You should develop an hierarchical class structure that minimizes duplication among the classes. Each class should overload the toString() method to produce an appropriate String to be used as the directory listing. The listing should be produced by iterating through the Collection of entries, using the toString() method to print each entry. Since you want to display the directory alphabetically, you might consider using a Tree Map Collection to store your database, creating the key by concatenating the last and first name. To facilitate implementation of the remove and retrieve methods, add a getter method to the Person class to return the key of the object.