Java/문제풀이

Java 상속 문제풀이 1

pakms980319 2024. 3. 8. 12:19

1. 다음 main() 메서드와 실행 결과를 참고하여 TV를 상속받은 ColorTV 클래스를 작성하라.

 

답:

 

  • 컬러 크기에 대한 멤버변수 colorSize를 정의한다
  • 티비 사이즈, 컬러 사이즈를 인자로 받는 생성자 메서드를 정의한다
  • 생성자 메서드에서 상속받은 멤버변수의 초기화를 위해 super() 메서드를 사용한다
  • printProperty() 메서드에서 상속받은 멤버변수 color는 접근 제한자가 private이므로 getSize() 메서드를 통해 값을 참조한다

2. 다음 클래스 다이어그램과 main() 메서드를 참고하여 클래스를 완성하여라.

편의를 위해 클래스는 main 메서드가 있는 클래스에서 작업했다.

 

 

답:

class Employee {
    public String name;
    private int age;
    private String addr;

    public Employee(String name, int age, String addr) {
        super();
        this.name = name;
        this.age = age;
        this.addr = addr;
    }
   

    public void setAge(int age) {
        this.age = age;
    }

    public void setAddr(String addr) {
        this.addr = addr;
    }

    public int getAge() {
        return age;
    }

    public String getAddr() {
        return addr;
    }
}


class Parttimer extends Employee {
    private int hour_pay;

    public Parttimer(String name, int age, String addr, int hour_pay) {
        super(name, age, addr);
        this.hour_pay = hour_pay;
    }


    public void setHourPay(int pay) {
        this.hour_pay = pay;
    }


    @Override
    public String toString() {
        return name + " " + getAge() + " " + getAddr() + " " + hour_pay;
    }
}


class Regular extends Employee {
    private int salary;

    public Regular(String name, int age, String addr, int salary) {
        super(name, age, addr);
        this.salary = salary;
    }


    public void setSalary(int salary) {
        this.salary = salary;
    }

    @Override
    public String toString() {
        return name + " " + getAge() + " " + getAddr() + " " + salary;
    }
}

 

'Java > 문제풀이' 카테고리의 다른 글

Java 문제 풀이 Class  (0) 2024.03.12
Java Up/Down Casting 문제 1  (0) 2024.03.11
Java 문제 풀이 2  (1) 2024.03.07
Java 문제 풀이 1  (0) 2024.03.06
0. 변수 문제풀이  (0) 2024.02.28