0% found this document useful (0 votes)
12 views

Program 3

Uploaded by

lokotwiststudio2
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views

Program 3

Uploaded by

lokotwiststudio2
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

3. 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.
StaffDemo.java
package prog2a;
import java.util.Scanner;
public class StaffDemo {
public static void main(String[] args) {
int i,choice;
String staffId,name,phoneNumber,domain,publication,skills,period;
float salary;
int tc=0,techcount=0,cc=0;
Teaching[] ts = new Teaching[10];
Technical[] techstaff = new Technical[10];
Contract[] cs = new Contract[10];
Scanner scanner = new Scanner(System.in);
for(;;)
{
System.out.println("Enter your choice");
System.out.println("1 Teaching Staff Entry");
System.out.println("2 Technical Staff Entry");
System.out.println("3 Contract Staff Entry");
System.out.println("4 Teaching Staff Details");
System.out.println("5 Technical Staff Details");
System.out.println("6 Contract Staff Details");
System.out.println("7.Exit");
choice = scanner.nextInt();
switch(choice)
{
case1:System.out.println("Enter Teaching
Details(StaffId,Name,Salary,PhoneNumber,Domain,Publication)");
staffId = scanner.next();
name = scanner.next();
salary = scanner.nextFloat();
phoneNumber = scanner.next();
domain = scanner.next();
publication = scanner.next();
ts[tc]= new Teaching(staffId,name,salary,phoneNumber,domain,publication);
tc++;
break;
case 2:System.out.println("Enter Technical staffDetails(StaffId,Name,Salary,
PhoneNumber,Skills)");
staffId = scanner.next();
name = scanner.next();
salary = scanner.nextFloat();
phoneNumber = scanner.next();
skills = scanner.next();
techstaff[techcount] =new Technical(staffId,name,salary,phoneNumber,skills);
techcount++;
break;
case 3:System.out.println("Enter Contract staff details (StaffId,Name,Salary,
PhoneNumber,Period)");
staffId = scanner.next();
name = scanner.next();
salary = scanner.nextFloat();
phoneNumber = scanner.next();
period = scanner.next();
cs[cc] = new Contract(staffId,name,salary, phoneNumber ,period);
cc++;
break;
case 4:if(tc==0)
System.out.println("No teaching staff details available");
else
{
System.out.println("Teaching Staff Details");
System.out.println("StaffId"+"\t"+"Name"+"\t"+"Salary"+"\t"+"PhoneNumber"+"\t"+
"Domain"+"\t"+"Publication");
for(i=0;i<tc;i++)
System.out.println(ts [i]);
}
break;
case 5:if(techcount==0)
System.out.println("No technical staff details available");
else
{
System.out.println("Technical Staff Details:");
System.out.println("StaffId"+"\t"+"Name"+"\t"+"Salary"+"\t"+"PhoneNumber"+"\t"+
"Skills");
for(i=0;i<techcount;i++)
System.out.println(techstaff[i]);
}
break;
case 6:if(cc==0)
System.out.println("No contract staff details available");
else
{
System.out.println("contract StaffDetails:");
System.out.println("StaffId"+"\t"+"Name"+"\t"+"Salary"+"\t"+"PhoneNumber"+"\t"+
"period");
for(i=0;i<cc;i++)
System.out.println(cs[i]);
}
break;
case 7:System.exit(0);
}
}
}
}
Staff.java
package prog2a;
public class Staff {
protected String staffId,name,phoneNumber;
protected float salary;
public Staff(String staffId, String staffName, float staffSalary, String
staffPhoneNumber)
{
this.staffId = staffId;
this.name = staffName;
this.salary = staffSalary;
this.phoneNumber = staffPhoneNumber;
}
public String toString()
{
return staffId + " " + name + " " + salary + " " + phoneNumber ;
}
}
Teaching.java
package prog2a;
public class Teaching extends Staff {
private String domain;
private String publication;
public Teaching(String staffId, String name, float salary, String phoneNumber,String domain,
String publication)
{
super(staffId, name, salary, phoneNumber);
this.domain = domain;
this.publication = publication;
}
public String toString()
{
return staffId+ " " + name +" " +salary+ " " +phoneNumber+" " + domain +" "
+publication;
}
}
Contract.java
package prog2a;
public class Contract extends Staff{
private String period;
public Contract(String staffId, String staffName, float staffSalary, String
staffPhoneNumber,String staffPeriod)
{
super(staffId, staffName, staffSalary,staffPhoneNumber);
period = staffPeriod;
}
public String toString()
{
return super.toString()+ " " + period ;
}
}
Technical.java
package prog2a;
public class Technical extends Staff {
private String skills;
public Technical(String staffId, String name, float salary, String phoneNumber,String
skills)
{
super(staffId, name, salary, phoneNumber);
this.skills = skills;
}
public String toString()
{
return super.toString() + " "+skills;
}
}

You might also like