Question: Here is a skeleton Code with some implementations for a project I am doing. I need the following items listed inside the code as well.
Here is a skeleton Code with some implementations for a project I am doing. I need the following items listed inside the code as well. The Invoices for each student type, the id settings and management settings for all the screens. The pictures show the type of items needed to finish the code fully.
import java.util.;
Custom exception class used for handling invalid student ID cases.
class IdExcep extends Exception
public IdExcepString message
supermessage;
Abstract base class for all types of students. It requires implementing the printInvoice method.
abstract class Student
private String id;
private String name;
Constructor initializes the student with ID and name.
public StudentString id String name
this.id id;
this.name name;
Abstract method to print fee invoice, to be implemented by subclasses.
public abstract void printInvoice;
Getters and setters for student ID and name.
public String getId
return id;
public String getName
return name;
public void setIdString id
this.id id;
public void setNameString name
this.name name;
Represents an undergraduate student with specific attributes like GPA.
class UndergraduateStudent extends Student
private double gpa;
Constructor for undergraduate student includes GPA.
public UndergraduateStudentString id String name, double gpa
superid name;
this.gpa gpa;
Implementation of invoice printing specific to undergraduate students.
@Override
public void printInvoice
Detailed logic to calculate and print the invoice for an undergraduate student.
Getters and setters for GPA.
public double getGpa
return gpa;
public void setGpadouble gpa
this.gpa gpa;
Abstract class for graduate students, includes additional fields like advisor.
abstract class GraduateStudent extends Student
private String advisor;
Constructor for graduate students includes advisor information.
public GraduateStudentString id String name, String advisor
superid name;
this.advisor advisor;
Getters and setters for advisor.
public String getAdvisor
return advisor;
public void setAdvisorString advisor
this.advisor advisor;
Specific class for MS students, inherits from GraduateStudent.
class MsStudent extends GraduateStudent
public MsStudentString id String name, String advisor
superid name, advisor;
Invoice printing for MS students.
@Override
public void printInvoice
Logic to calculate and print the invoice for an MS student.
Specific class for PhD students, includes a list of labs they supervise.
class PhdStudent extends GraduateStudent
private List supervisedLabs;
public PhdStudentString id String name, String advisor
superid name, advisor;
this.supervisedLabs new ArrayList;
Allows adding a lab to the list of supervised labs.
public void addLabString lab
this.supervisedLabs.addlab;
Invoice printing for PhD students.
@Override
public void printInvoice
Logic to calculate and print the invoice for a PhD student.
Getter for the list of supervised labs.
public List getSupervisedLabs
return supervisedLabs;
Represents a course or lab with attributes such as course number CRN name, credit hours, and type.
class Course
private int crn;
private String name;
private int creditHours;
private String type;
Constructor initializes the course with its det
Sample Run: Assume that the user enters a valid menu option for all the menus
Enter your selection: A
Enter the ClassLab Number:
Lab for LOG Logic and Proof Lab Room CMA
Course Management Menu:
Choose one of:
A Search for a class or lab using the classlab number
A Search for a C B delete a class
C Add a lab to a class Back to main menu
Enter your selection: A
Enter the ClassLab Number:
Enter the ClassLab Number: LOG Lulic dnd Pruve
A fee invoice for an MS student should look like
VALENCE COLLEGE ORLANDO PL
Pee Invoice Prepared for student: RAERICRA JUNAID
RAERICRA JUNAID Credit Hour $
Health id fees $
TOTAL PAMMENTS $
A fee invoice for an PhD student should look like
VALENCE COLLEGE ORLANDO FL
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
