inblog logo
|
DailyCoding
    Practice

    15-1. (오버라이드) 동물 행동 시뮬레이터 (난이도2)_문제

    박은서's avatar
    박은서
    Dec 17, 2025
    15-1. (오버라이드) 동물 행동 시뮬레이터 (난이도2)_문제
    Contents
    [1] 부모 클래스 만들기✅ [2] 자식 클래스 만들기✅ [3] Zookeeper 클래스 만들기✅ [4] ZookeeperApp 클래스에 main() 작성🧪 [5] 실행 예시
    💡
    ex06.example 패키지에 코드를 구현하세요
    notion image

    [1] 부모 클래스 만들기

    ✔ 클래스명: Animal

    다음 메서드를 가진다:
    void sound() // 동물 기본 소리 void introduce() // 자기소개 void act() // 동물의 추가 행동
    각 메서드는 기본적인 문자열을 출력하도록 작성한다.
    (자식 클래스에서 재정의하여 사용할 예정)

    ✅ [2] 자식 클래스 만들기

    다음 3개의 클래스를 Animal을 상속받아 작성한다.
    Dog Cat Duck
    각 클래스는 자신만의 name 필드와 name을 초기화하는 생성자를 가진다.
    각 클래스는 다음 메서드를 재정의한다:

    ✔ introduce()

    • "제 이름은 <name> 입니다." 출력

    ✔ sound()

    클래스
    출력 내용
    Dog
    "멍멍!"
    Cat
    "야옹~"
    Duck
    "꽥꽥!"

    ✔ act()

    클래스
    출력 내용
    Dog
    "꼬리를 흔든다"
    Cat
    "할퀸다"
    Duck
    "헤엄친다"

    ✅ [3] Zookeeper 클래스 만들기

    ✔ 클래스명: Zookeeper

    메서드:
    class Zookeeper { void action(Animal a) { // 구현하기 } }
    기능:
    1. 전달받은 Animal 객체의
        • introduce()
        • sound()
        • act()
          • 를 순서대로 호출한다.
    1. 실행 후 한 줄을 띄운다.

    ✅ [4] ZookeeperApp 클래스에 main() 작성

    다음 조건을 만족하도록 main 메서드를 작성하시오.
    1. Animal 타입 배열을 길이 3으로 생성한다.
    1. 아래 객체를 순서대로 저장한다.
    0번: new Dog("콩이") 1번: new Cat("나비") 2번: new Duck("덕돌이")
    1. Zookeeper 객체를 생성한다.
    1. for문을 사용하여 배열에 있는 모든 동물에 대해
      1. action() 메서드를 호출한다.

    🧪 [5] 실행 예시

    제 이름은 콩이 입니다. 멍멍! 꼬리를 흔든다 제 이름은 나비 입니다. 야옹~ 할퀸다 제 이름은 덕돌이 입니다. 꽥꽥! 헤엄친다
    Share article
    Contents
    [1] 부모 클래스 만들기✅ [2] 자식 클래스 만들기✅ [3] Zookeeper 클래스 만들기✅ [4] ZookeeperApp 클래스에 main() 작성🧪 [5] 실행 예시

    DailyCoding

    RSS·Powered by Inblog