Create an application called registrar that has the


Create an application called Registrar that has the following classes:

A Student class that minimally stores the following data ?elds for a student:

¦ name

¦ student id number

¦ number of credits

¦ total grade points earned

The following methods should also be provided:

¦ A constructor that initializes the name and id ?elds 

¦ A method that returns the student name ?eld

¦ A method that returns the student ID ?eld

¦ A method that determines if two student objects are equal if their student id numbers are the same (override equals from the class Obj ect)

¦ Methods to set and retrieve the total number of credits

¦ Methods to set and retrieve the total number of grade points earned

¦ A method that returns the GPA (grade points divided by credits)

An Instructor class that minimally stores the following data ?elds for an instructor:

¦ name

¦ faculty id number

¦ department

The following methods should also be provided:

¦ A constructor that initializes the name and id ?elds 

¦ Methods to set and retrieve the instructor's department

A Course class that minimally stores the following data for a course:

¦ name of the course

¦ course registration code

¦ maximum number of 35 students

¦ instructor

¦ number of students

¦ students registered in the course (an array)

The following methods should also be provided:

¦ A constructor that initializes the name, registration code, and maximum number of students

¦ Methods to set and retrieve the instructor

¦ A method to search for a student in the course; the search should be based on an ID number.

¦ A method to add a student to the course. If the course is full, then an exception with an appropriate message should be raised (try creating your own exception class for this). Also, be sure that the student is not already registered in the course. The list of students should be in the order that they registered.

¦ A method to remove a student from the course. If the student is not found, then an exception with an appropriate message should be raised (use the same exception class mentioned above).

¦ A method that will allow Course objects to be output to a ?le using object serialization

¦ A method that will allow Course objects to be read in from a ?le created with Object serializtion

You will note that the Student and Instructor classes described above have some commonality. Create a Person class that captures this commonality and uses it as a base class for Student and Instructor. This class should be responsible for the name and id ?elds and also provide a toString method that returns a string of the form name, id. This will be the inherited toString method for the Student and Instructor classes.

a. Draw a UML diagram for this application.

b. Implement the previous classes in Java. Write a main program that can serve as a test class that tests all of the methods created and demonstrates that they are working.

c. Write a second main program that provides a menu to allow the user to 

i. create a course, prompting the user for all of the course information,

ii. add students to the course,

iii. check to see if a student is registered in the course, and

iv. remove a student from the course.

d. Add to the previous menu the ability to save a course using object serialization. Also add a menu choice to read in a course from a file given the course code. Come up with a system of naming the file so that the user need only be asked the course code to load the course information from a file.

Request for Solution File

Ask an Expert for Answer!!
JAVA Programming: Create an application called registrar that has the
Reference No:- TGS01090292

Expected delivery within 24 Hours