UCLA Programming in Python Question
Description
Unformatted Attachment Preview
Due December 7, 8PM ;-10% until 11:59PM; -40% until December 8, 12PM
1. Write the code for the following classes of employees
All attributes in all classes must be private; %corator/r explicit constructor may be used in the
definition of classes, but @property cannot be used ( -50% if those rules are not followed)
Emp (short for Employee)
The class Emp has 3 subclasses: 1. SalEmp (short for Salaried Employe), 2. HourlyEmp,
3. CommEmp (short for commission employee).
The class CommEmp has one subclass, BpCommEmp (short for base plus commission
Employee).
There is also a BusinessCar class
Class Emp
Attributes: empName, minSalary (short for minimum salary)
Methods: besides the usual methods (if needed), the class Emp has the
following 2 methods:
earnings(), which returns minSalary
displayInfo(), which displays name and minSalary
class SalEmp
Attribute: monthlySalary
Methods: besides the usual methods (if needed), the class EmpSal
has the following 2 methods:
earnings(), which returns the greater of minSalary and monthlySalary
displayInfo(), which displays name, monthlySalary, earnings()
class HourlyEmp
Attribute: hours, rate
Methods: besides the usual methods (if needed), the class EmpSal
has the following 2 methods:
earnings(), which returns the greater of minSalary and hours*rate
displayInfo(), which displays name, hours, rate , earnings()
class CommEmp
Attribute: sales, rate
Methods: besides the usual methods (if needed , the class EmpSal
has the following 2 methods:
earnings(), which returns the greater of minSalary and sales*rate
displayInfo(), which displays name, sales, rate , earnings()
class BpCommEmp
Attribute: baseSalary, car (car is a BusinessCar object )
Methods: besides the usual methods (if needed), the class EmpSal
has the following 2 methods:
earnings(), which returns sales*rate+ baseSalary
displayInfo(), which displays name, sales, rate , earnings(), car info
class BusinessCar
attributes: make, model, year
methods: as needed
2. Instantiate (that is create) the following objects (in main()) and display the information for all
objects, using the method dispayInfo() (car info to be provided via displayInfo())
Class Emp (empName,minSalary)
Amy 1500
Brie 1500
SalEmp (empName,monthlySalary, minSalary)
Carol 2000 1200
Jean 2000 1200
HourlyEmp (empName,hours, rate, minSalary)
Gloria 200 15 1000
CommEmp (empName,sales, rate, minSalary)
Doug 200000 0.10 1000
BpCommEmp (empName, sales, rate, baseSalary, car)
Grace 300000 0.2 1500 car: Toyota Lexus 2015
Luke 200000 0.2 3000 car: Toyota Camry 2015
Linda 300000 0.2 1500 car: Ford Taurus 1900 (extra credit if Linda has no car)
Please, do not clutter your code with getters and setters and any other methods that are not used.
Purchase answer to see full
attachment
Have a similar assignment? "Place an order for your assignment and have exceptional work written by our team of experts, guaranteeing you A results."