티스토리 뷰

반응형

⊙ 문제

 

다음 표와 같은 멤버를 가진 Controller 추상 클래스가 있다. TV와 Radio 클래스는 Controller의 구현 클래스이다. Controller, TV, Radio 클래스를 작성하시오. 그리고 ControllerTest 프로그램으로 테스트하시오.

 

필드 boolean power
메서드 void show()
추상 메서드 String getName()

 


 

⊙ 문제 접근 과정

 

부모 Controller

자식 TV, Radio

 

class 구현

 


 

⊙ 문제 풀이

 

abstract class Controller {
    boolean power;

    public Controller(boolean power) {
        this.power = power;
    }

    void show() {
        if (power==true)
            System.out.println(getName() + "가 켜졌습니다.");
        else
            System.out.println(getName() + "가 꺼졌습니다.");
    }
    abstract String getName();
}

class TV extends Controller {
    public TV(boolean power) {
        super(power);
    }
    public String getName() {
        return "TV";
    }
}
class Radio extends Controller {
    public Radio(boolean power) {
        super(power);
    }
    public String getName(){
        return "Radio";
    }
}



public class ControllerTest {
    public static void main(String[] args) {
        Controller[] c = {new TV(false), new Radio(true)};

        for (Controller controller : c)
            controller.show();
    }
}

 


⊙ 결과

 

 


 

⊙ 마무리

 

 

NONE

 

좋아요 로그인하지 않아도 누를 수 있습니다!

 

728x90
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함