I am new to Java programming. I'm studying IT and Java programming is required. I have a project due in a little over a week. Here are the requirements:

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.

I have created the following in BlueJ:
BlueJ Project-screen-shot-2014-04-09-4.23.05-pm.png

Here is the code I currently have under each class. For the Person class:
Java Code:
/**
 * Write a description of class Person here.
 * 
 * @author () 
 * @version ()
 */
public class Person
{
    private String firstname;
    private String lastname;
    private String email;

    /**
     * Constructor for objects of class Person
     */
    public Person()
    {
        
    }

    /**
     * An example of a method - replace this comment with your own
     * 
     * @param  y   a sample parameter for a method
     * @return     the sum of x and y 
     */
}
For the Students class:
Java Code:
/**
 * Write a description of class Students here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class Students extends Person
{
    private String classlevel;

    /**
     * Constructor for objects of class Students
     */
    public Students()
    {
        
    }

    /**
     * An example of a method - replace this comment with your own
     * 
     * @param  y   a sample parameter for a method
     * @return     the sum of x and y 
     */
}
For the Staff class:
Java Code:
/**
 * Write a description of class Staff here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class Staff extends Person
{
    // instance variables - replace the example below with your own
    private String office;
    private String title;

    /**
     * Constructor for objects of class Staff
     */
    public Staff()
    {
       
    }

    /**
     * An example of a method - replace this comment with your own
     * 
     * @param  y   a sample parameter for a method
     * @return     the sum of x and y 
     */
}
And for the Faculty class:
Java Code:
/**
 * Write a description of class Faculty here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class Faculty extends Person
{
    private String office;
    private boolean tenured;

    /**
     * Constructor for objects of class Faculty
     */
    public Faculty()
    {
     
    }

    /**
     * An example of a method - replace this comment with your own
     * 
     * @param  y   a sample parameter for a method
     * @return     the sum of x and y 
     */
}
I know WHAT I wanted the code to do, but I'm not sure exactly HOW to do it. I am not catching Java as I should be, but there aren't any tutors (affordable tutors) in my area that can help. My instructor mentioned he wanted us to use reading from and writing to a file for this, in addition to the other requirements. Can anyone offer assistance? I'm not sure where to go next. I want to get the code down and it working before I create the GUI for it. I appreciate any help!