Sanchez Construction Loan Co. makes loans of up to $100,000 for construction projects. There are two categories of Loans-those to business and those to individual applicants.
Write an application that tracks all new construction loans. The application must also calculate the total amount owed at the due date (original loan amount + loan fee). The application should include the following classes.
• Loan- A public abstract class that inherits from the LoanConstants interface. A loan includes a loan number, customer last name, amount of loan, interest rate, and term. The constructor requires data for each of the fields except interest rate.
Do not allow loan amounts over $100,000. Force any loan term that is not one of the three defined in the LoanConstants class to a short-term, one-year loan. Declare an abstract method AmountOwed() that calculates the amount owed at the end of the loan term. Create a toString() method that displays all the loan data.
• LoanConstants- A public interface class. LoanConstants includes constant values for short-term (1 year), medium-term (3 years), and long-term (5 years) loans. It also contains constants for the company name and the maximum loan amount.
• BusinessLoan- A public class that inherits from Loan. The BusinessLoan constructor sets the interest rate to 1% over the current prime interest rate, and assigns a loan number, customer last name, amount of loan, interest rate, and loan term.
• PersonalLoan- A public class that inherits from Loan. The PersonalLoan constructor sets the interest rate to 2% over the current prime interest rate, and assigns a loan number, customer last name, amount of loan, interest rate, and loan term.
• CreateLoans- An application that creates an array of five Loans. Prompt the user for the current prime interest rate. Then, in a loop, prompt the user for a loan type and all other relevant information for that loan. Store the created Loan objects in an array. When data entry is complete, display all the loans.