• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

Player player = new Knight();

21.04.29 16:02 작성 조회수 189

1

강사님 안녕하세요

Main 메소드에서 Knight()를 생성할 때 Knight knight = new Knight();로 하지 않고

Player Player = new Knight();로 하는 이유가 있을까요?

답변 1

답변을 작성해보세요.

3

Knight를 만들 때 Player를 상속받아 만들었기 때문에,
저렇게 Player 타입의 변수로 들고 있을 수도 있습니다.

Knight가 아닌 Player로 관리하면 편한 이유는,
나중에 Archer, Mage 등 온갖 직업이 등장하더라도,
공통적으로 Player로 관리할 수 있기 때문입니다.
함수를 만들 때도 Player를 인자로 받게 만들어주면
Knight, Archer, Mage 상관없이 무엇이든 넣어줄 수 있겠죠.