// A type to represent a person.
// Barry Cornelius, 18 June 2000
public interface Person extends Comparable
{
   // return the Name part of the target person
   public String getName();

   // return the DateOfBirth part of the target person
   public Date getDateOfBirth();

   // return the PhoneNumber part of the target person
   public String getPhoneNumber();

   // return the Height part of the target person
   public double getHeight();

   // set the Name part of the target person to pName
   public void setName(String pName);

   // set the DateOfBirth part of the target person to pDateOfBirth
   public void setDateOfBirth(Date pDateOfBirth);

   // set the PhoneNumber part of the target person to pPhoneNumber
   public void setPhoneNumber(String pPhoneNumber);

   // set the Height part of the target person to pHeight
   public void setHeight(double pHeight);

   // return true if and only if the target is the same person as pObject
   public boolean equals(Object pObject);

   // return the hashcode for the value of the target person
   public int hashCode();

   // return a textual representation of the target person
   public String toString();
}
