Valeri173

Untitled

Feb 23rd, 2021
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.44 KB | None | 0 0
  1. public abstract class Worker {
  2. private String name;
  3. private double salary;
  4.  
  5. public Worker(){
  6. this.name = " ";
  7. this.salary = 0;
  8. }
  9. public Worker(String name, double salary){
  10. this.name = name;
  11. this.salary = salary;
  12. }
  13.  
  14. public String getName() {
  15. return name;
  16. }
  17. public void setName(String name) {
  18. this.name = name;
  19. }
  20.  
  21. public double getSalary() {
  22. return salary;
  23. }
  24. public void setSalary(double salary) {
  25. this.salary = salary;
  26. }
  27.  
  28. public abstract double getWeeklySalary();
  29. }
  30.  
  31. public class HourlyWorker extends Worker{
  32. private String work;
  33. private int hours;
  34.  
  35. public HourlyWorker(String name, int salary, String work, int hours){ super(name, salary);
  36. this.work = work;
  37. this.hours = hours;
  38. }
  39.  
  40. public String getWork() {
  41. return work;
  42. }
  43. public void setWork(String work) {
  44. this.work = work;
  45. }
  46.  
  47. public int getHours() {
  48. return hours;
  49. }
  50. public void setHours(int hours) {
  51. this.hours = hours;
  52. }
  53.  
  54. @Override
  55. public double getWeeklySalary() {
  56. return 40 * getSalary() + 1.5 * getSalary() * (hours - 40);
  57. }
  58. }
  59.  
  60. public class SalariedWorker extends Worker{
  61. private String work;
  62. private double hours;
  63.  
  64. public SalariedWorker(String name, int salary, String work, double hours){ super(name, salary);
  65. this.work = work;
  66. this.hours = hours;
  67. }
  68.  
  69. public String getWork() {
  70. return work;
  71. }
  72. public void setWork(String work) {
  73. this.work = work;
  74. }
  75.  
  76. public double getHours() {
  77. return (int) hours;
  78. }
  79. public void setHours(int hours) {
  80. this.hours = hours;
  81. }
  82.  
  83. @Override
  84. public double getWeeklySalary() {
  85. return hours * getSalary();
  86. }
  87. }
  88.  
  89. public class Main {
  90. public static void main(String[] args) {
  91. HourlyWorker worker1 = new HourlyWorker("Ivan", 200, "moving", 26);
  92. SalariedWorker worker2 = new SalariedWorker("Vasil", 185, "cutting", 42);
  93. System.out.println((worker1.getHours() + worker2.getHours()));
  94. System.out.println((worker1.getHours() + worker2.getHours()) / 2);
  95. System.out.println((worker1.getWeeklySalary() + worker2.getWeeklySalary()));
  96. System.out.println((worker1.getWeeklySalary() + worker2.getWeeklySalary()) / 2);
  97. }
  98. }
Advertisement
Add Comment
Please, Sign In to add comment