더북(TheBook)

FireMonster 클래스와 IceMonster 클래스를 각각 Character 클래스를 상속받아 구현할지, 같은 몬스터이므로 Monster 클래스라는 부모 클래스를 따로 둘지 고민해야 합니다. 설명을 읽어 보면 추가되는 멤버도 겹치고, fireball() 메서드를 제외한 나머지 메서드도 겹칩니다. 그렇다면 공통되는 부분을 기본 클래스로 만들고 이를 상속받는 것이 좋을 것 같습니다. 이러한 내용을 그림으로 표현하면 그림 7-5와 같습니다.

144

그림 7-5 Character 클래스 디자인 ②

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.