update,
This commit is contained in:
25
it114105/itp4510/Lab01/Lab1.3/PartTimeStaff.java
Normal file
25
it114105/itp4510/Lab01/Lab1.3/PartTimeStaff.java
Normal file
@@ -0,0 +1,25 @@
|
||||
public class PartTimeStaff extends Staff implements Salary {
|
||||
private int workingHour;
|
||||
|
||||
public PartTimeStaff(String name, int id, char grade, int workingHour) {
|
||||
super(name, id, grade);
|
||||
this.workingHour = workingHour;
|
||||
}
|
||||
|
||||
public void display() {
|
||||
System.out.println("Name: " + name + "; ID: " + id + "; Grade: " + grade + "; Working Hour: " + workingHour + "; Salary: " + computeSalary());
|
||||
}
|
||||
|
||||
public int computeSalary() {
|
||||
switch (grade) {
|
||||
case 'A':
|
||||
return SALARY_A;
|
||||
case 'B':
|
||||
return SALARY_B;
|
||||
case 'C':
|
||||
return SALARY_C;
|
||||
default:
|
||||
return SALARY_OTHER;
|
||||
}
|
||||
}
|
||||
}
|
8
it114105/itp4510/Lab01/Lab1.3/Salary.java
Normal file
8
it114105/itp4510/Lab01/Lab1.3/Salary.java
Normal file
@@ -0,0 +1,8 @@
|
||||
public interface Salary {
|
||||
public final int SALARY_A = 4000;
|
||||
public final int SALARY_B = 3000;
|
||||
public final int SALARY_C = 2000;
|
||||
public final int SALARY_OTHER = 1000;
|
||||
|
||||
public abstract int computeSalary();
|
||||
}
|
13
it114105/itp4510/Lab01/Lab1.3/Staff.java
Normal file
13
it114105/itp4510/Lab01/Lab1.3/Staff.java
Normal file
@@ -0,0 +1,13 @@
|
||||
public abstract class Staff {
|
||||
protected String name;
|
||||
protected int id;
|
||||
protected char grade;
|
||||
|
||||
public Staff(String name, int id, char grade) {
|
||||
this.name = name;
|
||||
this.id = id;
|
||||
this.grade = grade;
|
||||
}
|
||||
|
||||
public abstract void display();
|
||||
}
|
8
it114105/itp4510/Lab01/Lab1.3/TestStaff.java
Normal file
8
it114105/itp4510/Lab01/Lab1.3/TestStaff.java
Normal file
@@ -0,0 +1,8 @@
|
||||
public class TestStaff {
|
||||
public static void main(String args[]) {
|
||||
PartTimeStaff p1 = new PartTimeStaff("John", 123, 'B', 20);
|
||||
PartTimeStaff p2 = new PartTimeStaff("Mary", 124, 'A', 22);
|
||||
p1.display();
|
||||
p2.display();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user