Answered step by step
Verified Expert Solution
Question
1 Approved Answer
It is required to develop an application in Java to maintain information about students registered in various courses in a university. ( A ) Write
It is required to develop an application in Java to maintain information about students registered in various courses in a university.
A Write a class called Course having data members:
courseNum String such as ITCS courseName String such as Data Structures credits int section int
Include the following public methods in the class:
Default constructor without any parameters constructor with parameters, set and get methods for all attributes, equals and toString methods.
B Write a class called Student having following data fields:
idNum long firstName String lastName String gender char email String coursesRegistered ArrayList of type Course
Note that coursesRegistered is a list of type ArrayList Java class in which each element is of class type Course. The coursesRegistered is the list of courses in which the student is currently registered.
It has following methods:
Default constructor without any parameters constructor with parameters except for coursesRegistered set and get methods for all attributes, equals, and printCoursesRegistered.
The list coursesRegistered is created as an empty list in the constructors. The equals method compares two objects of type Student based on their idNums.
C Write a class called Roster having following data members:
studentsList: list of students LinkedList JCF Class each element is of type
Student, size: actual number of objects of type Student in the studentsList.
Include following methods in this class:
i Constructor without any parameter. Create studentsList as empty list and initialize size to
ii addStudent: inserts a new Student object at the end of the studentsList. Object of type Student is passed as parameter. If the object already exists in the list, then do not add the object and return false, else return true after successfully adding the object.
iii deleteStudent: deletes a Student object from the studentsList. The idNum of the Student is passed as parameter. If the object is not found in the studentsList, then the object cannot be deleted and the method returns false, else the method returns true, after successfully deleting the object.
iv searchStudent: searches the studentsList by idNum, passed as parameter. If the object is found, it returns its location in the studentsList, else returns
v isEmpty: returns true, if the studentsList is empty, else returns false.
vi listSize: returns instance variable size.
vii getStudent: accepts a parameter index of type int and returns the object of type Student in studentList at location index.
viii addCourse: accepts an object of type Course as the first parameter and the idNum of the Student as the second parameter. The Course can be added only if the
a Student object with the specified idNum exists in the studentsList,
b Course does not exist in the coursesRegistered list for the Student,
c After adding the course, the number of credits, do not exceed
If the course is added successfully, return true, else return false.
ix deleteCourse: accepts an object of type Course as the first parameter and the idNum of the Student as the second parameter. The Course can be deleted only if the Student exists in the studentList and the Course exists in the list of courses registered for that student.
x printStudentDetails: accepts idNum of Student as a parameter and prints all the details of the Student and also all the details of the courses in which the Student is registered.
D Write a class called Registration having only menudriven main method to test all functionalities of your classes. Use switch statement inside a loop, to write menudriven program.
NOTE: For linked list use Javas builtin LinkedList class. Write detailed comments for each class and method. Write comments using Javadoc.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started