Module 6 - Lab - Medical Provider

 Objective

Create an application based on the following UML Class diagram ->

 

image-20240330-141434.png

 

Create an application with the following Classes:

  1. OfficeLocation

  2. Medical Provider (base class - Abstract) - This object has an OfficeLocation (Class). Additionally, the MedicalProvider has an abstract method payEmployee()

  3. Doctor inherits from Medical Provider

  4. Nurse inherits form Medical Provider

Doctor

  • Shown Above in the Object Diagram - note the Weekly Gross Pay (note this is calculated based on Annual Salary)

  • Doctor specialty is (Internal Medicine, Cardiologist, Orthopedic, etc.)

Nurse

  • Shown Above in the Object Diagram - note the Weekly Gross Pay is calculated on how many hours worked, and pay rate (please handle overtime - time and a half for all hours over 40)

  • Nurse Type is (RN, LVN, MA, etc.)

Program User prompts:

The Driver Class can call the parameterized Constructor - you do not need to get user input for the Driver class. The Driver class will need to use an ArrayList to hold 4 MedicalProviders (polymorphism) 2 doctors and 2 nurses.

Program outputs

Display the list of medical providers as shown above with the objects data. Below demonstrates an example of how to output the items:

 

image-20240330-141842.png

Note for the Class Diagram above:

  • First Section - Class Name

  • Second Section - Required Constructors

  • Third Section - Class Attributes

  • Fourth Section - Methods

  • Fifth Section - Getters and Setters

 Deliverables

Upload the following files in a zip folder that you have created:

  1. Java class files

  2. Screenshot of the Console with the code executing

 

 

COSC-1437 / ITSE-2457 Computer Science Dept. - Author: Dr. Kevin Roark