더북(TheBook)

여기서 클래스의 상속이라는 개념이 등장합니다. HeroMonster 클래스에서 공통되는 부분만 추려 새로운 클래스로 만듭니다. 그리고 HeroMonster 클래스는 새로운 클래스에서 공통부분을 가져와 사용합니다. 이를 상속받는다고 표현합니다. 이때 공통부분을 모아 만든 클래스를 부모 클래스, 상속받는 클래스를 자식 클래스라고 합니다.

공통부분을 모아 부모 클래스인 Unit을 만들면 다음과 같습니다.

class Unit {
  constructor(name, hp, att) { 
    this.name = name; 
    this.hp = hp; 
    this.att = att;
  }
  attack(target) { 
    target.hp -= this.att;
  }
}

Unit 클래스를 상속받도록 HeroMonster 클래스를 수정하면 다음과 같습니다. 자식 클래스에서 부모 클래스를 상속받을 때는 extends라는 예약어를 사용합니다.

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