Please complete the following Programming Exercises. All programs must be formatted for easy readability, and commented with both a description at the top of each file and ample in-code comments.
(1)Create a class named Pay that includes five double variables that hold hours worked, rate of pay per hour, withholding rate, gross pay, and net pay. Create three overloaded computeNetPay() methods. When computeNetPay() receives values for hours, pay rate, and withholding rate, it computes the gross pay and reduces it by the appropriate withholding amount to produce the net pay. Gross pay is computed as hours worked, multiplied by pay per hour. When computeNetPay() receives two arguments, they represent the hours and pay rate, and the withholding rate is assumed to be 15%. When computeNetPay( ) receives one argument, it represents the number of hours worked, the withholding rate is assumed to be 15%, and the hourly rate is assumed to be 5.65. Write a main() method that tests all three overloaded methods. Save the application as Pay.java.
(2) Write an application that stores at least four different course names and meeting days and times in a two-dimensional array. Allow the user to enter a course name and display the day of the week and time that the course is held. If the course does not exist, display an error message. Give the user the option of printing out all courses and meeting times. Save the class as Schedule.java.