Write a program to implement an appointment book.
· Implement a superclass Appointment and subclasses Onetime, Daily, and Monthly. An appointment has a description (for example, “meet with accountant”) and a date.
· Write a method occursOn(int year, int month, int day) that checks whether the appointment occurs on that date. For example, for a monthly appointment, you must check whether the day of the month matches.
· Then fill an array of Appointment objects with a mixture of appointments. Have the user enter a date and print out all appointments that occur on that date.
· Allow the user to add new appointments. The user must specify the type of appointment, the description, and the date.
Provide a test class to show the implementation of your appointment book. Follow all directions in the Rules for Submitting Programs