Program Target 1
Write a program that converts dates from numerical month/day/year format to
normal “ month day, year ” format (for example, 12/25/2000 corresponds to
December 25, 2000 ). You will define three exception classes, one called
MonthException , another called DayException , and a third called
YearException . If the user enters anything other than a legal month number
(integers from 1 to 12 ), your program
will throw and catch a MonthException and ask the user to reenter the month.
Similarly, if the user enters anything other th an a valid day number
(integers from 1 to either28 , 29 , 30 , or 31 , depending on the month
and year ), then your program will throw and catch aDayException and ask
the user to reenter the day. If the user enters a year that is not in the range
1000 to 3000 (inclusive ), then your program will throw and catch a
YearException and ask the user to reenter the year. (There is nothing very
special about the numbers 1000 and 3000 other than giving a good range of
likely dates.)
Program Target 2
Create a class named Movie that can be used with your video rental
business.TheMovie class should track the Motion Picture Association of
America (MPAA ) rating (e.g., Rated G, PG-13, R ), ID Number, and movie title
with appropriate accessor and mutator methods. Also create an equals ()
method that overrides Object ’ s equals () method, where two movies are
equal if their ID number is identical. Next, create three additional classes named
Action , Comedy , and Drama that are derived from Movie . Finally, create
an overridden method named calcLateFees that takes as input the number of
days a movie is late and returns the late fee for that movie. The default late fee
is $2/day. Action movies have a late fee of $3/day, comedies are $2.50/day,
and dramas are $2/day. Test your classes from amain method.
Extend the previous problem with a Rental class. This class should store a
Movie that is rented, an integer representing the ID of the customer that rented
the movie, and an integer indicating how many days late the movie is. Add a
method that calculates the late fees for the rental. In your main method,
create an array of type Rental filled with sample data of all types of movies.
Then, create a method namedlateFeesOwed that iterates through the array
and returns the total amount of late fees that are outstanding.