You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

68 lines
1.5 KiB

package senior;
import base.Scientist;
import base.EmployeeActions;
public class SeniorScientist implements Scientist, EmployeeActions {
private double salary;
private int seniority;
public SeniorScientist(double salary, int seniority) {
this.salary = salary;
this.seniority = seniority;
}
@Override
public double computeBonus() {
return salary * seniority * 0.03;
}
@Override
public double getSalary() {
return salary;
}
@Override
public void setSalary(double salary) {
this.salary = salary;
}
@Override
public int getSeniority() {
return seniority;
}
@Override
public void setSeniority(int seniority) {
this.seniority = seniority;
}
@Override
public void hire() {
System.out.println("Senior Scientist hired.");
}
@Override
public void fire() {
System.out.println("Senior Scientist fired.");
}
@Override
public void transfer() {
System.out.println("Senior Scientist transferred.");
}
@Override
public void accrueSalary() {
System.out.println("Total salary: " + (salary + computeBonus()));
}
@Override
public String toString() {
return "SeniorScientist { salary = " + salary +
", seniority = " + seniority +
", bonus = " + computeBonus() +
", totalSalary = " + (salary + computeBonus()) + " }";
}
}