Write a program to calculate bonus for different departments using method overriding.
Source code
abstract class Department
{
double salary,bonus,totalsalary;
public abstract void calBonus(double salary);
public void displayTotalSalary(String dept)
{
System.out.println(dept+"\t"+salary+"\t\t"+bonus+"\t"+totalsalary);
}
Java Lab Manual Page 11
}
class Accounts extends Department
{
public void calBonus(double sal)
{
salary = sal; bonus = sal * 0.2;
totalsalary=salary+bonus;
}
}
class Sales extends Department
{
public void calBonus(double sal)
{
salary = sal; bonus = sal * 0.3;
totalsalary=salary+bonus;
}
}
public class BonusCalculate
{
public static void main(String args[])
{
Department acc = new Accounts(); Department sales = new Sales();
acc.calBonus(10000); sales.calBonus(20000);
System.out.println("Department \t Basic Salary \t Bonus \t Total Salary");
System.out.println(" ");
acc.displayTotalSalary("Accounts Dept"); sales.displayTotalSalary("Sales Dept");
System.out.println(" ");
}
}
⦁ Write a program to implement thread priorities.
Source code
class A extends Thread
{
Java Lab Manual Page 12
public void run()
{
System.out.println(" Thread A started"); for(int i=1;i<5;i++)
System.out.println(" Thread A : i = "+i); System.out.println("Exit from Thread A");
}
}
class B extends Thread
{
public void run()
{
System.out.println(" Thread B started"); for(int i=1;i<5;i++)
System.out.println(" Thread B : i = "+i); System.out.println("Exit from Thread B");
}
}
class C extends Thread
{
public void run()
{
System.out.println(" Thread C started"); for(int i=1;i<5;i++)
System.out.println(" Thread C : i = "+i); System.out.println("Exit from Thread C");
}
}
class ThreadPriority
{
public static void main(String args[])
{
A threadA = new A(); B threadB = new B(); C threadC = new C();
threadA.setPriority(Thread.NORM_PRIORITY); threadB.setPriority(Thread.MAX_PRIORITY); threadC.setPriority(Thread.MIN_PRIORITY);
System.out.println("Start Thread A");
Java Lab Manual Page 13
threadA.start();
System.out.println("Start Thread B"); threadB.start();
System.out.println("Start Thread C"); threadC.start();
System.out.println("End of main Thread");
}
}
