Implementation of Java Program To Demonstrate Method Overloading and Constructor Overloading
Implementation of Java Program To Demonstrate Method Overloading and Constructor Overloading
Salary(double m, double o) {
this.m_salary = m;
this.other = o;
}
Salary(double m) {
this.m_salary = m;
this.other = 0;
}
double totalsalary() {
return m_salary + other;
}
class Wages {
double home_wages;
double repair_charges;
double medicinal_wages;
Wages(double wages) {
this.home_wages = wages;
this.repair_charges = 0;
this.medicinal_wages = 0;
}
double totalwages() {
return home_wages + repair_charges + medicinal_wages;
}
class Savings {
double tsalary;
double twages;
Savings(double sala) {
this.tsalary = sala;
this.twages = 0;
}
double savings_earned() {
return tsalary - twages;
}
double totalIncome() {
return salary.totalSalary() + wages.totalWages();
}
}
class Finance {
private Worker worker;
private Savings savings;
Finance(Worker worker, Savings savings) {
this.worker = worker;
this.savings = savings;
}
void displayFinancialSummary() {
double totalIncome = worker.totalIncome();
double totalSavings = savings.savingsEarned();
System.out.println("Total Income: " + totalIncome);
System.out.println("Total Savings: " + totalSavings);
}
}
public class Exp4 {
public static void main(String[] args) {
Salary sal = new Salary(32000, 5000);
Wages wag = new Wages(20000, 3000, 5000);
Salary sal2 = new Salary(35000);
Wages wag2 = new Wages(15000);
Worker worker1 = new Worker(sal, wag);
Worker worker2 = new Worker(sal2, wag2);
Savings sav1 = new Savings(worker1.totalIncome());
Savings sav2 = new Savings(worker2.totalIncome(), 1000);
Finance finance1 = new Finance(worker1, sav1);
Finance finance2 = new Finance(worker2, sav2);
System.out.println("Financial Summary for Worker 1:");
finance1.displayFinancialSummary();
System.out.println("Financial Summary for Worker 2:");
finance2.displayFinancialSummary();
}
}
OUTPUT: