상속

Posted 2015. 4. 1. 17:57

부모 클래스에서 멤버 변수를 생성자로 셋팅을 했다면

상속받는 자식 클래스 에서도 부모클래스( super을 호출 해 줘야 한다. )

이클립스에서 자동 지원도 해준다 클릭클릭

-> 우클릭 -> source -> generate construct using feild ( 알트시프트s )

 

 

class Employee{
 Employee(String kubun, String name, String address, String dept) {
  super();
  this.kubun = kubun;
  this.name = name;
  this.address = address;
  this.dept = dept;
 }

 String kubun; // 직원구분
 // 생성자 제너레이트로 생성 -> source -> 제네레이트 컨스트럭트 유징 필드(알트+시프트+s)
 String name; // 이름
 String address; // 주소
 String dept; // 부서
 
 int getPay(){
  return 0;
 }

 @Override
 public String toString() { // toString도 기본 제공 -> alt+shift+s -> tostring 끝.
  return "Employee [kubun=" + kubun + ", name=" + name + ", address="
    + address + ", dept=" + dept + "]";
 }
}

// 정규직원
class formalEmployee extends Employee{
 formalEmployee(String kubun, String name, String address, String dept,
   int empNo, String position, int salary, int bonusRate) {
  super(kubun, name, address, dept);
  this.empNo = empNo;
  this.position = position;
  this.salary = salary;
  this.bonusRate = bonusRate;
 }

 int empNo;   // 직원번호
 String position; // 직급
 int salary;   // 연봉
 int bonusRate; // 보너스 지급율
 
// 정규직원의 봉급 : 연봉/12 + (연봉/12*보너스 지급율/100)이다
 @Override
 int getPay(){
  return salary/12 + (salary/12*bonusRate/100);
 }

 @Override
 public String toString() {
  return super.toString() + "formalEmployee [empNo=" + empNo + ", position=" + position
    + ", salary=" + salary + ", bonusRate=" + bonusRate + "]";
 }
}

// 비정규직
class InfomalEmployee extends Employee{
 InfomalEmployee(String kubun, String name, String address, String dept,
   Date expireDate, int kibonPay) {
  super(kubun, name, address, dept);
  this.expireDate = expireDate;
  this.kibonPay = kibonPay;
 }

 Date expireDate; // 계약만료일
 int kibonPay;  // 기본임금
 
// 비정규직원의 봉급은 기본 임금이다.
 @Override
 int getPay(){
  return kibonPay;
 }

 @Override
 public String toString() {
  return super.toString() + "InfomalEmployee [expireDate=" + expireDate + ", kibonPay="
    + kibonPay + "]";
 }
}

 

'Java !!!' 카테고리의 다른 글

instanceof 객체관계를 확인  (0) 2015.04.02
상속 예시 한개  (0) 2015.04.01
자바 random  (0) 2015.04.01
자바 상속  (0) 2015.04.01
자바 싱글톤  (0) 2015.04.01