Source of Undergraduate.java


  1: //Undergraduate.java
  2: 
  3: public class Undergraduate
  4:     extends Student
  5: {
  6:     private int level;
  7:     //1 for freshman, 2 for sophomore, 3 for junior, or 4 for senior.
  8: 
  9:     public Undergraduate()
 10:     {
 11:         super();
 12:         level = 1;
 13:     }
 14: 
 15:     public Undergraduate
 16:     (
 17:         String initialName,
 18:         int initialStudentNumber,
 19:         int initialLevel
 20:     )
 21:     {
 22:         super(initialName, initialStudentNumber);
 23:         setLevel(initialLevel); //Checks 1 <= initialLevel <= 4
 24:     }
 25: 
 26:     public void reset
 27:     (
 28:         String newName,
 29:         int newStudentNumber,
 30:         int newLevel
 31:     )
 32:     {
 33:         reset(newName, newStudentNumber); //StudentÕs reset
 34:         setLevel(newLevel); //Checks 1 <= newLevel <= 4
 35:     }
 36: 
 37:     public int getLevel()
 38:     {
 39:         return level;
 40:     }
 41: 
 42:     public void setLevel
 43:     (
 44:         int newLevel
 45:     )
 46:     {
 47:         if ((1 <= newLevel) && (newLevel <= 4))
 48:             level = newLevel;
 49:         else
 50:         {
 51:             System.out.println("Illegal level!");
 52:             System.exit(0);
 53:         }
 54:     }
 55: 
 56:     public void writeOutput()
 57:     {
 58:         super.writeOutput();
 59:         System.out.println("Student Level: " + level);
 60:     }
 61: 
 62:     public boolean equals
 63:     (
 64:         Undergraduate otherUndergraduate
 65:     )
 66:     {
 67:         return equals((Student)otherUndergraduate) &&
 68:             (this.level == otherUndergraduate.level);
 69:     }
 70:     /*
 71:     //Alternate version of equals() method
 72:     public boolean equals
 73:     (
 74:         Undergraduate otherUndergraduate
 75:     )
 76:     {
 77:         return super.equals(otherUndergraduate) &&
 78:             (this.level == otherUndergraduate.level);
 79:     }
 80:     */
 81: }