inheritance

 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.");
		}
	}
}