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

박은서's avatar
Dec 17, 2025
15-1. (오버라이드) 동물 행동 시뮬레이터 (난이도2)_문제
💡
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