JAVA Inheritance With Concept and Examples / Output
PROGRAM STATEMENT
Design a super class called Staff with details as StaffId, Name, Phone, Salary. Extend this class by writing three subclasses namely Teaching (domain, publications), Technical (skills), and Contract (period). Write a Java program to read and display at least 3 staff objects of all three categories.
CONCEPT
EXAMPLE INHERITANCE IN JAVA (SUPER CLASS / SUBCLASS) PROGRAM
/** Design a super class called Staff with details as StaffId, Name, Phone, Salary. Extend
this class by writing three subclasses namely Teaching (domain, publications),
Technical (skills), and Contract (period). Write a Java program to read and display at
least 3 staff objects of all three categories.*/
package daa.EXP2AB;
import java.util.Scanner;
class Staff
{ //data members of Staff class
String StaffId=null, Name=null, Phone=null;
float Salary;
//constructor to initialize Staff class data members
Staff(String S,String N,String P,float Sa)
{ StaffId=S;
Name=N;
Phone=P;
Salary=Sa;
}
//display method to display the data members
public void display()
{ System.out.println("Entered Details are:");
System.out.println("StaffID:"+StaffId);
System.out.println("Name:"+Name);
System.out.println("Phone:"+Phone);
System.out.println("Salary:"+Salary);
}
}
//Subclass of Staff
class Teaching extends Staff
{ //data members of Teaching class
String domain=null, publications=null;
public Teaching(String S, String N, String P, float Sa,String d,String p) {
//super invokes super class Staff constructor
super(S, N, P, Sa);
domain=d;
publications=p;
}
public void display()
{ //super invokes display super class method
super.display();
System.out.println("Domain:"+domain);
System.out.println("Publication:"+publications);
}
}
class Technical extends Staff
{ String skills=null;
public Technical(String S, String N, String P, float Sa,String Sk) {
//super invokes Staff super class constructor
super(S, N, P, Sa);
skills=Sk;
}
public void display() {
//super invokes display super class method
super.display();
System.out.println("Skills:"+skills);
}
}
class Contract extends Staff
{ float period;//in years
public Contract(String S, String N, String P, float Sa,float p) {
super(S, N, P, Sa);
period=p;
}
public void display() {
//super invokes display super class method
super.display();
System.out.println("Period:"+period);
}
}
public class StaffDemo {
public static void main(String args[])
{ Scanner s = new Scanner(System.in);
String StaffId[]=new String[3];
String Name[]=new String[3];
String Phone[]=new String[3];
float Salary[]=new float[3];
String Domain[]=new String[3];
String Publications[]=new String[3];
System.out.println("Enter the Details for Teachers");
for(int i=0;i<3;i++)
{ //reading variables of Staff
System.out.println("Enter StaffId");
StaffId[i] = s.next();
System.out.println("Enter Name");
Name[i] = s.next();
System.out.println("Enter Phone");
Phone[i] = s.next();
System.out.println("Enter Salary");
Salary[i] = s.nextFloat();
//reading variables of Teaching
System.out.println("Enter Domain");
Domain[i] = s.next();
System.out.println("Enter Publications");
Publications[i] = s.next();
}
//Dislaying variables of Teaching
Teaching T1[]=new Teaching[3];
for(int k=0;k<3;k++)
{ T1[k]=new Teaching(StaffId[k],Name[k],Phone[k],Salary[k],Domain[k],Publications[k]);
T1[k].display();
}
Scanner s2 = new Scanner(System.in);
String StaffIdT[]=new String[3];
String NameT[]=new String[3];
String PhoneT[]=new String[3];
float SalaryT[]=new float[3];
String Skills[]=new String[3];
System.out.println("Enter the Details for Technical");
for(int j=0;j<3;j++)
{ //reading variables of Staff
System.out.println("Enter StaffId");
StaffIdT[j] = s2.next();
System.out.println("Enter Name");
NameT[j] = s2.next();
System.out.println("Enter Phone");
PhoneT[j] = s2.next();
System.out.println("Enter Salary");
SalaryT[j] = s2.nextFloat();
//reading variables of Technical
System.out.println("Enter Skills");
Skills[j] = s2.next();
}
//Dislaying variables of Technical
Technical Te1[]=new Technical[3];
for(int x=0;x<3;x++)
{ Te1[x]=new Technical(StaffIdT[x],NameT[x],PhoneT[x],SalaryT[x],Skills[x]);
Te1[x].display();
}
Scanner s3 = new Scanner(System.in);
String StaffIdC[]=new String[3];
String NameC[]=new String[3];
String PhoneC[]=new String[3];
float SalaryC[]=new float[3];
float period[]=new float[3];
System.out.println("Enter the Details for Contract");
for(int k=0;k<3;k++)
{ //reading variables of Staff
System.out.println("Enter StaffId");
StaffIdC[k] = s3.next();
System.out.println("Enter Name");
NameC[k] = s3.next();
System.out.println("Enter Phone");
PhoneC[k] = s3.next();
System.out.println("Enter Salary");
SalaryC[k] = s3.nextFloat();
//reading variables of Contract
System.out.println("Enter Period");
period[k] = s3.nextFloat();
}
//Dislaying variables of Contract
Contract C1[]=new Contract[3];
for(int y=0;y<3;y++)
{
C1[y]=new Contract(StaffIdC[y],NameC[y],PhoneC[y],SalaryC[y],period[y]);
C1[y].display();
}
}
}

Recent Comments