Answered You can hire a professional tutor to get the answer.
Please refer to the code in the Appendix (pages 2 - 6) to answer the following questions. 1. What is the relationship between the Employee class and
Please refer to the code in the Appendix (pages 2 - 6) to answer the following questions.
1. What is the relationship between the Employee class and the Manager class? What concept does this demonstrate?
2. What would happen if mySalary were declared private instead of protected?
3. Write the output for each section of print statements.
4. Which raiseSalary() method does m.raiseSalary(10) execute? Why? What concept does this demonstrate?
5. Which raiseSalary() method does e1.raiseSalary(10) execute? Why? What concept does this demonstrate?
6. Which raiseSalary() method does e2.raiseSalary(10,1) execute? Why? What concept does this demonstrate?
Traits.java
public interface Traits
{
public String getName();
public String getTitle();
}
Employee.java
public class Employee implements Traits
{
private String myName;
private String myTitle;
protected double mySalary;
private int myAge;
public Employee(String name, String title, double salary, int age)
{
myName = name;
myTitle = title;
mySalary = salary;
myAge = age;
}
public String getName()
{
return myName;
}
public String getTitle()
{
return myTitle;
}
public double getSalary()
{
return mySalary;
}
public int getAge()
{
return myAge;
}
public void raiseSalary(int percent)
{
mySalary = mySalary + percent * 0.01 * mySalary;
}
public void raiseSalary(int percent, int cost_of_living_adjustment)
{
mySalary = mySalary + percent * 0.01 * mySalary + cost_of_living_adjustment * 0.01 * mySalary;
}
}
Manager.java
public class Manager extends Employee
{
private int yearsWorked;
private String highestDegree;
private double promotionBonus;
public Manager(String name, String title, double salary, int age, int experience, String degree, double bonus)
{
super(name, title, salary, age);
yearsWorked = experience; highestDegree = degree; promotionBonus = bonus;
}
public int getExperience()
{ return yearsWorked;
}
public String getDegree()
{
return highestDegree;
}
public double getBonus()
{
return promotionBonus;
}
public void raiseSalary(int percent)
{
mySalary = mySalary + percent * 0.01 * mySalary + promotionBonus;
}
}
Test.java
public class Test
{
public static void main(String args[])
{
Manager m = new Manager("John Doe", "Department Head", 100000.0, 55, 30, "PhD", 5000.0);
Employee e1 = new Employee("Jane Doe", "Resource Analyst", 75000.0, 40);
Employee e2 = new Employee("Jim Doe", "Engineer", 85000.0, 46);
System.out.println("Name : " + m.getName()); System.out.println("Title : " + m.getTitle());
System.out.println("Age : " + m.getAge()); System.out.println("Years of Experience : " + m.getExperience());
System.out.println("Highest Degree Earned : " + m.getDegree()); System.out.println("Salary : " + m.getSalary());
System.out.println("Promotion Bonus : " + m.getBonus()); m.raiseSalary(10);
System.out.println("Salary Raised!");
System.out.println("New Salary : " + m.getSalary());
System.out.println("n");
System.out.println("Name : " + e1.getName());
System.out.println("Title : " + e1.getTitle());
System.out.println("Age : " + e1.getAge());
System.out.println("Salary : " + e1.getSalary()); e1.raiseSalary(10);
System.out.println("Salary Raised");
System.out.println("New Salary : " + e1.getSalary());
System.out.println("n");
System.out.println("Name : " + e2.getName());
System.out.println("Title : " + e2.getTitle());
System.out.println("Age : " + e2.getAge());
System.out.println("Salary : " + e2.getSalary()); e2.raiseSalary(10,1);
System.out.println("Salary Raised");
System.out.println("New Salary : " + e2.getSalary());
}
}