// Person.java
public class Person
{
    protected String _name;
    protected String _username;
    protected String _schoolName;
    protected String _email;
    
    // Constructor for class
    public Person(String name, String username, String schoolName, String email)
    {
        _name = name;
        _username = username;
        _schoolName = schoolName;
        _email = email;
    }
    
    public String getName()
    {
        return _name;
    }

    public String schoolName()
    {
        return _schoolName;
    }

    public String username()
    {
        return _username;
    }

    public String email()
    {
        return _email;
    }

    public String toString()
    {
        String description = 
            "Name: " + _name +
            "\nUsername: " + _username +
            "\nEmail: " + _email +
            "\nSchool: " + _schoolName +
            "\n";
        return description;
    }

}

// Main class for Student.java
public class Student extends Person
{
    private String _grade;
    private String _classes;
    private String _teachers;
    // Constructor for class
    public Student(String name, String username, String schoolName, String email, String grade, String classes, String teachers)
    {
        super(name, username, schoolName, email);
        // TODO Auto-generated constructor stub
        
        _grade = grade;
        _classes = classes;
        _teachers = teachers;
    }
    
    @Override
    public String toString()
    {
        String description = 
            "Name: " + _name +
            "\nUsername: " + _username +
            "\nEmail: " + _email +
            "\nSchool: " + _schoolName +
            "\nGrade: " + _grade +
            "\nClasses: " + _classes +
            "\nTeachers: " + _teachers +
            "\n";
        return description;
    }
}

// Main class for Teacher.java
public class Teacher extends Person
{
    private String _className;
    
    // Constructor for class
    public Teacher(String name, String username, String schoolName, String email, String className)
    {
        super(name, username, schoolName, email);
        // TODO Auto-generated constructor stub
        
        _className = className;
    }
    
    @Override
    public String toString()
    {
        String description = 
            "Name: " + _name +
            "\nUsername: " + _username +
            "\nEmail: " + _email +
            "\nSchool: " + _schoolName +
            "\nClass Name: " + _className +
            "\n";
        return description;
    }
}

// Main class for Main.java
public class Main
{

    public static void main(String[] Args)
    {
        Person person = new Person("Tester Person", "testUsername123", "Random High School", "email@gmail.com");
        System.out.printf("%s\n", person.toString());

        Student student = new Student("Pranavi", "pranukurti987", "Del Norte High School", "pranavii32001@stu.powayusd.com", "12");
        System.out.printf("%s\n", student.toString());
        
        Teacher teacher = new Teacher("Mr. Mortenson", "codecodecode666", "Del Norte High School", "jmort@gmail.com", "AP Computer Science A");
        System.out.printf("%s\n", teacher.toString());

    }
}
Main.main(null);