09-05-2022
inheritance in java
import java.util.Scanner;
class Person {
private String name;
private String contactNum;
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
public void setContactNum(String contactNum) {
this.contactNum = contactNum;
}
public String getContactNum() {
return contactNum;
}
}
class Employee extends Person{
private double salary;
private String department;
public void setSalary(double salary) {
this.salary = salary;
}
public double getSalary() {
return salary;
}
public void setDepartment(String department) {
this.department = department;
}
public String getDepartment() {
return department;
}
}
class Student extends Person{
private String program;
private int yearLevel;
public void setProgram(String program) {
this.program = program;
}
public String getProgram() {
return program;
}
public void setYearLevel(int yearLevel) {
this.yearLevel = yearLevel;
}
public int getYearLevel() {
return yearLevel;
}
}
class Faculty extends Employee{
private boolean status;
public void setStatus(boolean status) {
this.status = status;
}
public boolean isRegular() {
return status;
}
}
public class CollegeList {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("Press E for Employee, F for Faculty, or S for Student: ");
char choice = scan.next().charAt(0);
switch(Character.toUpperCase(choice)) {
case 'E':
Employee e = new Employee();
System.out.print("Type employee's name, contact number, salary and department.\nPlease Enter after every input.\n");
String empName = scan.next();
e.setName(empName);
String empContactNumber = scan.next();
e.setContactNum(empContactNumber);
double empSalary = scan.nextDouble();
e.setSalary(empSalary);
String empDept = scan.next();
e.setDepartment(empDept);
System.out.println("---------------------------------");
System.out.println("Name: "+ e.getName());
System.out.println("Contact: "+ e.getContactNum());
System.out.println("Salary: "+ e.getSalary());
System.out.println("Department: "+ e.getDepartment());
break;
case 'S':
Student s = new Student();
System.out.print("Type student's name, contact number, enrolled program and year level .\nPlease Enter after every input.\n");
String studName = scan.next();
s.setName(studName);
String studContactNumber = scan.next();
s.setContactNum(studContactNumber);
String studProgram = scan.next();
s.setProgram(studProgram);
int studYearLevel = scan.nextInt();
s.setYearLevel(studYearLevel);
System.out.println("---------------------------------");
System.out.println("Name: "+ s.getName());
System.out.println("Contact: "+ s.getContactNum());
System.out.println("Enrolled Program: "+ s.getProgram());
System.out.println("Year Level: "+ s.getYearLevel());
break;
case 'F':
Faculty f = new Faculty();
System.out.print("Type faculty's name, contact number, salary and department.\nPlease Enter after every input.\n");
String facultyName = scan.next();
f.setName(facultyName);
String facultyContactNumber = scan.next();
f.setContactNum(facultyContactNumber);
double facultySalary = scan.nextDouble();
f.setSalary(facultySalary);
String facultyDept = scan.next();
f.setDepartment(facultyDept);
System.out.print("Press Y if you are a regular member. N if not\n");
char facultyStatus = scan.next().charAt(0);
System.out.println("---------------------------------");
System.out.println("Name: "+ f.getName());
System.out.println("Contact: "+ f.getContactNum());
System.out.println("Salary: "+ f.getSalary());
System.out.println("Department: "+ f.getDepartment());
if(Character.toUpperCase(facultyStatus) == 'Y') {
f.setStatus(true);
System.out.println("Status: A regular member ["+f.isRegular()+"]");
} else {
f.setStatus(false);
System.out.println("Status: Not a regular member ["+f.isRegular()+"]");
}
break;
default:
System.out.print("Invalid input, please restart the program.");
}
}
}