// Person: base class adapted from Weiss's book
public class Person { 
   private String name; // name of person 
   private String ssn; // SSN of person 
   private int age; // age of person
   public Person (String n, String s, int a) {
      name = n; ssn = s; age = a;
   }
   public String getName() { return name;}
   public String getSsn() { return ssn;}
   public int getAge() { return age;}
   public String toString() {
      return "Name: " + name + ", SSN: " + ssn + ", Age: " + age;
   }
}

// Employee: class that extends Person public class Employee extends Person { private double salary; public Employee (String n, String ssn, int a, double sal) { super(n, ssn, a); salary = sal; } public double getSalary() { return salary;} public String toString() { return super.toString() + ", Salary: " + salary; } }
// Student: class that extends Person public class Student extends Person { private double gpa; public Student (String n, String ssn, int a, double g) { super(n, ssn, a); gpa = g; } public double getGpa() { return gpa;} public String toString() { return super.toString() + ", GPA: " + gpa; } }
// Persons: use the classes Person, Student, and Employee public class Persons { public static void main(String[] args) { Person[] p = new Person[5]; p[0] = new Person("Williams, John", "534-54-2344", 23); p[1] = new Employee("Johnson, Jane", "232-33-3343", 43, 16000.0); p[2] = new Student("Wilkins, Jean", "123-89-5688", 19, 3.5); p[3] = new Employee("Jacobs, Joe", "112-21-4023", 58, 47000); p[4] = new Student("Wilson, James", "003-00-8755", 21, 2.75); for (int i = 0; i < p.length; i++) System.out.println(p[i]); } }