-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathInheritanceEx.java
More file actions
78 lines (61 loc) · 2.1 KB
/
InheritanceEx.java
File metadata and controls
78 lines (61 loc) · 2.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
/*
WAJP to implement following inheritance
[Emp(empno, name, sal)] [Overtime(noOfHours)]
\ /
\ /
\ /
[Salary]
Calculate and display total salary in salary class. Consider overtime salary as 500 rs/hrs
*/
import java.util.Scanner;
class Employee {
String name;
int empno;
double basicSalary;
Employee(String name, int empno, double basicSalary){
this.name = name;
this.empno = empno;
this.basicSalary = basicSalary;
}
}
interface Overtime {
double calculateOvertime();
}
class Salary extends Employee implements Overtime {
double noOfHours;
Salary(String name, int empno, double basicSalary, double noOfHours){
super(name, empno, basicSalary);
this.noOfHours = noOfHours;
}
@Override
public double calculateOvertime(){
return 500 * noOfHours;
}
double totalSalary(){
return basicSalary + calculateOvertime();
}
void display(){
System.out.println("===== Employee Details =====");
System.out.println("Name: " + name);
System.out.println("Emp no: " + empno);
System.out.println("Basic Salary: " + basicSalary);
System.out.println("Overtime Hours: " + noOfHours);
System.out.println("Overtime Salary: " + calculateOvertime());
System.out.println("Total Salary: " + totalSalary());
}
}
public class InheritanceEx{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.print("Enter Employee name: ");
String name = sc.nextLine();
System.out.print("Enter emp no: ");
int empno = sc.nextInt();
System.out.print("Enter Basic Salary: ");
double basicSalary = sc.nextDouble();
System.out.print("Enter Overtime Hours: ");
double noOfHours = sc.nextDouble();
Salary sal = new Salary(name, empno, basicSalary, noOfHours);
sal.display();
}
}