document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. /**
  2. An alarm clock should include a time to sound the alarm as well as methods
  3. to set the alarm.
  4. */
  5. public class AlarmClock extends Clock
  6. {
  7.     public int alarmHour;
  8.     public int alarmMinute;
  9.     public int alarmSecond;
  10.  
  11.     //Constructors
  12.     public AlarmClock()
  13.     {
  14.         super();
  15.         alarmHour = 0;
  16.         alarmMinute = 0;
  17.         alarmSecond = 0;
  18.     }
  19.  
  20.     public AlarmClock(int theHour, int theMinute, int theSecond, int alarmH, int alarmM, int alarmS)
  21.     {
  22.         super(theHour, theMinute, theSecond);
  23.         setAlarmHour(alarmH);
  24.         setAlarmMinute(alarmM);
  25.         setAlarmSecond(alarmS);
  26.     }
  27.  
  28.     //Accessors
  29.     public void setAlarmHour(int alarmH)
  30.     {
  31.         if((alarmH >= 0) && (alarmH <= 24))
  32.             alarmHour = alarmH;
  33.         else
  34.             System.out.println("Fatal error: invalid alarm hour");
  35.     }
  36.  
  37.     public void setAlarmMinute(int alarmM)
  38.     {
  39.         if((alarmM >= 0) && (alarmM <= 59))
  40.             alarmMinute = alarmM;
  41.         else
  42.             System.out.println("Fatal error: invalid alarm minute");
  43.     }
  44.  
  45.     public void setAlarmSecond(int alarmS)
  46.     {
  47.         if((alarmS >= 0) && (alarmS <= 59))
  48.             alarmSecond = alarmS;
  49.         else
  50.             System.out.println("Fatal error: invalid alarm second");
  51.     }
  52.     //Mutators
  53.     public int getAlarmHour()
  54.     {
  55.         return alarmHour;
  56.     }
  57.  
  58.     public int getAlarmMinute()
  59.     {
  60.         return alarmMinute;
  61.     }
  62.  
  63.     public int getAlarmSecond()
  64.     {
  65.         return alarmSecond;
  66.     }
  67.  
  68.     public String getCurrentAlarmTime()
  69.     {
  70.         return "The alarm is set to " + alarmHour + ":" + alarmMinute + ":" + alarmSecond;
  71.     }
  72.  
  73.     //Facilitators
  74.     public String toString()
  75.     {
  76.         return "The current time is " + getHour() + ":" + getMinute() + ":" +
  77.                 getSecond() + "\\nThe alarm is set to " + getAlarmHour() + ":" +
  78.                 getAlarmMinute() + ":" + getAlarmSecond();
  79.     }
  80.  
  81.     public boolean equals(Object o)
  82.     {
  83.         if(o == null)
  84.             return false;
  85.         else if(getClass() != o.getClass())
  86.             return false;
  87.         else
  88.         {
  89.             AlarmClock otherClock = (AlarmClock) o;
  90.             return((getHour() == otherClock.getHour()) && (getMinute() == otherClock.getMinute())
  91.                     && (getSecond() == otherClock.getSecond()) && (alarmHour == otherClock.alarmHour)
  92.                     && (alarmMinute == otherClock.alarmMinute) && (alarmSecond == otherClock.alarmSecond));
  93.         }
  94.  
  95.     }
  96.  
  97. }
');