Design and implement a class called Course that represents a course taken at a school. A Course
Question:
Design and implement a class called Course that represents a course taken at a school. A Course object should keep track of up to five students, as represented by the modified Student class from the previous project. The constructor of the Course class should accept only the name of the course. Provide a method called add Student that accepts one Student parameter (the Course object should keep track of how many valid students have been added to the course). Provide a method called average that computes and returns the average of all students’ test score averages. Provide a method called roll that prints all students in the course. Create a driver class (called TestCourse) with the main method that creates a course, adds several students, prints a roll, and prints the overall course test average. Your driver class should not prompt for the data, but either hard code it in the class, or read it from a file stored in the src directory.
Each method should throw exceptions as described in class if called with illegal arguments. This is for all four projects, but many methods will not have the possibility of illegal arguments (and so there is nothing to check). For example, if you try to add a sixth student in project 4, and the student should throw an Illegal Argument Exception.